Welcome to WebmasterWorld Guest from 188.8.131.52
We analyze the actual search term the user submits on Google to determine when to show ads targeted to a specific region or city. If someone enters a search query that contains a recognizable city or region, we may show appropriate regional or custom-targeted ads. For example, if someone searches for 'New York plumbers,' we may show relevant ads targeted to New York, regardless of the user's physical location.
It sounds more like a broad match issue to me. Sometimes you have to set negatives in a campaign/ad group to force the traffic where you want to go when multiple keywords can match to a query.