title: WPF: StringFormat on double value does not recognize custom windows region setting
body: <p>In my application I bind labels, textblocks etc. to double values in the view model.</p>
  
  <pre><code>&lt;Label Content="{Binding DoubleValue}" ContentStringFormat="{}{0:0.00}"&gt;
  &lt;TextBlock Text="{Binding DoubleValue, StringFormat='\{0:f2\}'}"
  </code></pre>
  
  <p>In my "code behind" I set the language property of the MainWindow:</p>
  
  <pre><code>TheMainWindow.Language = XmlLanguage.GetLanguage(CultureInfo.CurrentUICulture.Name);
  </code></pre>
  
  <p>This works like a charm. When german culture is selected, all double values use the comma as decimal symbol and when english culture is selected, all double values use the point as decimal symbol.</p>
  
  <p>The problem is when you customize the windows region settings, e.g. I configure the german reagion setting to have a point as decimal separator.</p>
  
  <p>The StringFormat method does not recognize this custom setting! It still formats the double values with a comma as decimal symbol.</p>
  
  <p>If I create a string property in the view model like this</p>
  
  <pre><code>public string FormattedDoubleValue
  {
          get { return DoubleValue.ToString("0.00"); }
  }
  </code></pre>
  
  <p>and bind to this property, this does recognize the custom region setting!</p>
  
  <p>Is there any way to make the StringFormat method recognize the custom region settings?</p>