MLT does conversion in a way that is fully reversible without ambiguity due to floating point precision errors. This can account for some unexpected time gaps, but they are consistent within MLT. See below.
Also remember to base all timestamps on the zero point of the timeline or clip. Don’t add one time span to the previous time span directly. There will be accumulation errors. Convert to frames, add frame counts together to get a new position, then convert the frame count back to a timestamp.