Your article seems to be missing one way to localize WPF.
How to change language at run-time in WPF with loadable Resource Dictionaries and DynamicResource
Binding (Example 1)
With this method there are no Resource.resx files, no BAML, no x:Uid mess, no recompiling for string changes.
With this method you can change your language at run-time.