Xamarin Resx Localisation Weirdness

This was a bit of a head scratcher, I've added localisation with 20+ languages to a project and found using the following kind of notation:

AppResource.cs-CZ.resx
AppResource.es-ES.resx
...etc

The resource files were set with the following build properties:

Build Action: Embedded Resource
Copy to Output Directory: Do not copy
Custom Tool: PublicResXFileCodeGenerator

In debug mode, the resources loaded fine and my localised text was appearing in the UI. however when built in Release mode, the resources we not loading and the default .resx (English) was being used.

After lots of messsing around with various settings, I remembered that a previous build had worked with a test Spanish file:

AppResource.es.resx

Now this file didn't have a Spanish variation but it worked.

Removing the language variations from the ends worked for release mode! Unfortunately I wanted simlified and traditional Chinese, so had to settle for just siplified.