Category list not returning all related entries
How many categories do you have in that locations group? A criteria model returns the first 100 elements only by default, so any category falling behind that wouldn't be listed, no matter if there's related entries or not.

Add limit(null) to your craft.categories criteria model to make it return all categories.