TrainFX handles request stops by :-
Option to skip station on route.
Will synchronize at next stop using GPS.
If Darwin enabled (headcode) then if route changed it will load new route with request stop omitted - applies to any route changes as progresses through the route. Does depend on Darwin sending out route change though.
GPS is a can of worms. Depends on number of satellites visible and continuity as well as confidence in result received. Mobile phones are more tolerant on errors so can show a location whereas anything that requires higher certainty of accuracy will say position not known. Only have to ask rescue services their opinion on people that rely on phones when go hiking