It seems to work as expected for those in England — or at least the same time zone as England, which feels obvious and not helpful at the same time. I’m not in the zone but still get England on all of my devices. Which is the “correct” answer.
I mean no offence to London, Canada, but how many people are really likely to mean “London, Canada” — and not “London, England” — when they just say “London”? Not as many as if it were the other way around, I bet.
I do wonder, and this may be a simple thing, but I wonder what the algorithm actually is in case of similar names. I thought I had it with the likelihood theory, but apparently not.