Coming from the CDN land this isnt true. We didnt put too much effort in to precision, but on the order of 99% of IP addresses get down to metro area. Cheap commerical providers like Maxmind get to the right postcode on the order of 90-95% of the time. Building your own latency and peering maps bridges that gap to 99% or better. Simply based on network topology and latency we should be able to get you down to post code or general area of a city.
Google is my ISP. My geolocated IP is accurate within a 15 mile radius. It doesn't matter if I have location services turned off or I'm using my desktop, searching "bakeries near me" finds them without issue.
I suspect that isn't all just one big coincidence.
Google has what 3 or 4 cities where they operate as an ISP, each with a pretty small footprint. It's no surprise anyone knows where you are.
A cable or telephone company has generalized coverage measured in states; some of them organize their network and customer IPs by small geographies, but sometimes all of southern california is in a single pool of IPs.
Not much use if you want to search bakery's.