It seems QLocale::uiLanguages(); returns the incorrect UI language when there is a mismatch between the regional setting and the system language on WinRT.
I can easily reproduce this by setting my phone language to Finnish or Norwegian, while the Region setting is english and different from the language itself.
Here is a typical printout:
Locale Name: "en_US"
UI Languages: ("en-JM", "en-US")
Note that the correct system language is obtained from checking this function directly: