<p>Is which IPs are assigned to which ISPs public information?  How do geo IP services obtain this information and maintain this information?</p>

<p>How can I personally figure out where a certain IP belongs without using one of these services?</p>

Beware, the data is often slow to be updated, and even slower to replicate.  My work place changed ISPs a number of years ago, and we were assigned a block of formerly Canadian IP addresses (we're based in the US), for months Google continued to give us google.ca as our default search engine.  About 1/2 the time my home IP address comes up as being from my town, the other 1/2 from a town in another state.
Jason is right that the process is the same, but the updates are even slower and the data less accurate.