from my experience, it uses the driver's phone gps + the place you asked to be picked + your phone's gps. and yeah, it could totally be gamed, but i think people should email uber whenever this happens since those drivers are scumbags.
i emailed them before regarding problems with drivers and the customer support team is always good (twice i had problems with drivers doing longer routes when smaller ones were better and once i had a problem with a driver that accepted my request but never showed up).
(btw, i'm not an uber employee, i just like the service and use at least twice a month)