How do I deliver posts based on user geolocation

Chances are good it is the value in $georegion being what looks like a name / text string, and your query comparing it against the ID of the local-music terms.

If the $georegion value matches the slug of the taxonomy terms, then changing ID to slug might fix your problem, in reality, you’ll probably need to do some massaging to get direct matches, depending on how everything is set up on your end – but to answer your question, I think using the ID field is the root of your problem right now.