Almost the right answer but a there is a slight difference that can make a lot of difference (quite literally!). You need to know where the SV was positioned at the time of transmission, not where it was at the time of reception.
Try the IGS for historical ephemeris data; use the final version for the most precise ephemeris:
[CODE]
http://www.igs.org/products
[/CODE]