The scan time of the PLC varies depending on the length of the ladder program and the complexity of the custom function being executed during the current scan. Minimum scan time for T100MD+ PLC is 2ms which is due to the long I/O scan time (which also includes software debouncing). It is possible that during a certain scan your ladder+TBASIC custom function consumes more than 20ms of CPU time. Since the timer contact, just like the I/O are only updated at the beginning of the ladder logic scan if you measure with a scope the timer output may occur only 2 scan time later which could explain what you are observing.
You will probably have to look into your program to reduce the possible bottle neck in your execution if the timing is so critical.