Got the same Location issue since yesterday. Location service was working excellent 1-2 weeks before.
Living in Germany my iPhone 4S locates me in Shanghai (always the same place).
After turning off and restarting iPhone the right location is found but after several minutes or sometimes hours I'm back in Shanghai again.
So I removed several new installed apps using location service - no difference.
The problem also occurred when I turned of WIFI or connected to another Router in my LAN, so I don't think it's a router problem.
Going to cellar, where is no phone network service (Telekom) or GPS-signal but only a WIFI-Connection to my LAN, location stays correct. Going upstairs and get connected to Telekom network service the location gets wrong again.
My kids got 2 new iPhone 4S too but have another provider (O2). They are located correctly and never had this issue.
So I believe the problem is the local cell broadcast information of the service provider!
Today I tried resetting network settings and ... now location service works correctly for 4 hours. But as I read in this discussion it can happen again.
I'll feedback this to Apple, too.