You can override the style of the datepicker control by either in-lining it or specifying a default style in the page resources or in the resources in app.xaml. The style might look something like:
<style targettype="{x:Type DatePickerTextBox}">
<setter property="Control.Template">
<setter.value>
<controltemplate>
<textbox x:name="PART_TextBox" xmlns:x="#unknown">
Text="{Binding Path=SelectedDate,
Converter={StaticResource localizationConverter}},
ConverterParameter={Binding CountryName},
RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
</textbox></controltemplate>
</setter.value>
</setter>
</style>
You might also be able to specify the country name as a dynamic resource and change it on the fly. The key here is that you get the country name into a value converter that can change the text representation for you. The converter should be relatively straightforward. The body of the convert method should just be:
return String.Format(culture, "{0:D}", value);
where you have cast culture to the correct culture object as passed via the converter parameter.
Alternately, and I think better, would be to switch to the DateTimePicker control that is in the WPF Toolkit. It has a Format property you set to 'Custom' then a FormatString property you can bind to something on your view model. When the user selects a country from the combobox, in the property setting for CountryName, set the appropriate format string for the picker control. Should be much cleaner that way.