Regarding the info about apparent MTC slippage, there may be a hardware or software problem. Here's the technical background on both the latency question and how MTC works for sync.
At a nominal 30 frames/second (29.97 but who's counting) each frame occupies 1/30 second which is 33.33 milliseconds.
At normal MIDI transfer speeds of 31,250 bits per second, presuming roughly 10 bits per MIDI byte and a typical 3-byte MIDI message, it takes about 1 millisecond to transmit a 3-byte MIDI message.
Though there's probably a bit of additional latency in processing, the lag for MIDI sending as above is about 3% of a video frame.
MTC makes use of "full frame messages" that are a multibyte System Exclusive message sent for precise locating, and "quarter frame messages" that send the nybbles (4-bit values) from the SMPTE timecode during program running.
Eight quarter-frame messages are necessary to deliver a complete SMPTE timecode (which means it takes two video frames for quarter frame messages to transmit the entire code) but this works OK since the frame numbers increase in a defined way, and each quarter-frame message acts like a sprocket hole for synchronization.
The two key points about quarter-frame messages: they advance with the true SMPTE time, and they are CLOCKING messages, about 8.3 milliseconds (33.33mS / 4) apart. (They're only 2 bytes, and take up about 7.7% of the MIDI bandwidth: about 240 bytes per second out of about 3125 bytes per second total MIDI bandwidth on a port.)
If you are seeing drift even in a long cue, I don't think that can be blamed on MTC, since the SMPTE-to-MTC interface is responsible for correctly generating MTC to follow precisely the incoming SMPTE timecode, and should adjust the MTC quarter-frame interval to precisely track the frame rate.
One more issue, which is that when reading SMPTE in its audio "LTC" (longitudinal timecode) form, an entire SMPTE frame must be read before you know what the frame number is. This makes the "read" number one-behind the actual number. So customarily SMPTE readers will (optionally) advance the reported frame number by 1, so that the number it SAYS the frame is, IS that frame's correct number.
There is a quiz next period.