Това е така, защото toString() използва текущата CultureInfo! Зависи от културата дали двойката е разделена със запетая или точка.
Вижте също това Въпрос на Stackoverflow!
Ако го отстраните, трябва да видите, че четецът ["Price"] връща обект (type=Object{double}). Тук стойността правилна ли е? Предполагам, че е така, така че просто направете следното, за да покажете двойната стойност:
string display = double.Parse(reader["Price"], CultureInfo.InvariantCulture).ToSring(CultureInfo.CurrentCulture);
System.Diagnostics.Debug.WriteLine(display);