" I am trying to figure out why it would be so accurate at a location while on wifi but off so much with 3g?? "
Very easy, Acer. Each radio network uses a different system to provide position information.
The GPS does it directly by calculating the geometry of the satellites and time differences in their signals. That solution is complicated by atmospheric distortions, so it might be within 100 meters for civilian GPS when the signal is intentionally degraded ("SA" was turned off some years ago and probably will stay off unless there's a war), typically is within 15 meters now, and can be better than 3 meters if "WAAS" is turned on.
The "WAAS" augmentation uses an extra radio signal to tell your GPS what the atmospheric distortions are, and IIRC right now there are only two WAAS stations, one on each coast of the US, so you can expect WAAS accuracy on the coasts and something less in the midlands.
Now, when an "Assisted GPS" (A-GPS) system reaches out to other networks, each of them works differently. The cell phone systems can use several different approaches, either comparing the timing of a signal to multiple towers (preferably 3) to triangulate where your phone is, or using special hardware which costs more. If you are seeing a cellular AGPS location within 1000 yards, it means your carrier cheaped out and deployed software instead of hardware. That's the most precise position then can give you based on the towers near you, since the towers may be reaching out up to 32 miles to get your signal. (Most US carriers automatically drop signals that are more than 32 miles distant, based on the propogation delay times on the calls, regardless of how clear they are.)
Move again--this time to WiFi--and the typical WiFi site is identified by the IP address, which is registered to a known customer of a known ISP, and recorded by cars that literally drive all over recording locations and network routers. Since WiFi is typically a short-range signal (100 feet?) the system isn't really telling you your position, it is just showing the position of the WiFi router you have connected through. Biased by any other information it has from the other networks.
Too much information? <G>
You'll also find that the Altitude information only comes from the GPS system, none of the "assists" provide that. In order to calculate altitude, a GPS needs a more powerful processor, or more processing time, and more satellites seen. Since most of us aren't flying by GPS, most GPSes intentionally leave the altitude sloppy, it can be off by 50-100 feet even on the best "ground" GPSes. The aviation models are way more expensive, partly for altitude, partly because FAA-certified anything is gonna cost.
Goggle is ahead of many vendors, in that they use different icons (triangle, circles of different size) insteaed of just sticking a tiny dot on the map and pretending "You are here" when you're really "somewhere around here, more or less."
Engineers use special GPS systems to get accuracy down to 2 centimeters or better. They make the aircraft GPSes look cheap.<G>