The two supervised devices now work. I'll put my solution here in case it applies to anybody else.
It was not overlapping profiles but thank you for suggesting that @PeterJames !
In the Meraki dashboard I went to Apps and checked Meraki SDM. Push -> Push To Installed. This forced a reinstall on the devices. The two supervised devices (Alex and Baba) are now showing Compliant and "Location tracking is enabled".
However...
Hans, the unsupervised device, is still not working.
It seems that Meraki MDM has a setting somewhere that remembers whether you authorized location tracking but doesn't actually check if it's currently enabled.
I tried removing Meraki MDM from Hans using the Meraki dashboard. This did not solve the problem.
I removed the app from the phone manually and tried the above. The phone gave the "App Installation dialog". I pressed install, it installed, asked me to allow notifications, did *not* ask to use location, and lists as non-compliant and without location. Now, the settings does not include Location and Privacy->Location does not list Meraki MDM (it's back to the state I reported at the beginning of this thread.