Хотя на эту странную ситуацию нет ответа ( Отчет об ошибке Microsoft ), я нашел способ обойти настройку DefaultThreadCurrentCulture в начале моего кода (метод Main):
var ci = new System.Globalization.CultureInfo(System.Globalization.CultureInfo.CurrentCulture.LCID);
ci.NumberFormat.CurrencyDecimalSeparator = ".";
ci.NumberFormat.CurrencyGroupSeparator = ",";
ci.NumberFormat.NumberDecimalSeparator = ".";
ci.NumberFormat.NumberGroupSeparator = ",";
ci.NumberFormat.PercentDecimalSeparator = ".";
ci.NumberFormat.PercentGroupSeparator = ",";
System.Globalization.CultureInfo.DefaultThreadCurrentCulture = ci;
System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = ci;