Picard giving more weight to the en_US alias than to the original name in any situation except if you tell it to prefer en_US names is a bug. My computer knows about seventeen different en_XX locales. Do we have to enter an alias for all of them? I don’t think so. en_US should have no bearing on en_GB, en_HK, en_CA, etc.
We can have English aliases without a specific region, right? This is the one that could be the default for all English regions (unless a more specific one exists, of course).
Actually, I think this whole locale-specific aliases mess should be cleaned up some time. My wish (which I think is pretty generic) is to have a preference list of locales, languages, and scripts. Picard would the select the first one it could find in the aliases, and revert to the main name if nothing is found.