I wouldn't use the system language line at all. Your idea about running the system language function / query first isn't a bad idea at all...
I would query something like...if sytem language is german or austrian or belgian (whichever countries / languages would prefer german over english as default language) then language = german else language = english end
As you've probably noticed, I've not written it out as it's supposed to be as it's more sort of a suggestion as to what you could query / do for the system language function.
For the language just query if it's english then set english elseif it's german set german. That way if it's neither then your system language function will have automatically taken care of it beforehand.
Hopefully this will have been some help towards a step in the right direction. If not then let me know.