When you use the Follow training function, Run.GPS tries to figure out at what position you are relative to the original track. If you're not exactly on the track or the GPS signal is unstable, it sometimes happens that Run.GPS recomputes the closest point to the original route. So, when you're running identical laps, it might jump to a wrong position in the original track and therefore compute a wrong remaining time.
Most of the time, when you start running on the original track, the virtual lead will be calculated correctly after a minute or two. But using multi-lap tracks to compete against is problematic, yes.
After presing the Follow training button I get immediately some virtual lead, for instance 34:16. After selecting for the second time Follow training I get immediately another value, for instance 1:15:45. What is that time? After pressing start (current traininig) virtual lead is not reset to zero, but this value still exists. That makes competiting against yourself unusable.
The training being a pattern to competite against consists of three identical big laps. Maybe this is reason the RunGPS cannot properly compare the pattern and current training.