There is a city in Texas named Amarillo. What is the "correct" pronunciation of that city name - the Spanish way of pronouncing the word, or the way the locals say it?
I believe that one had [ʃ] (English 'sh') when the Spanish got there but then there was a change in Spain (in Castilian only even, not in Catalan or Galician) from /ʃ/ and /ʒ/ -> /x/ (like the 'ch' in loch) and they brought it to the Americas.
Somehow those Spaniards brought that change to /x/ to all those Nahuatl place names but they never brought /θ/ to everyday speech in Mexico. I scratch my head at that.
Or maybe UK folks get it right?