Entonces el problema, inicialmente esta en la configuración regional de windows (como ya lo habia apuntado en su momento Tony), de donde el sistema toma el valor del DecimalSeparator. Si queres que tu sistema se ajuste al gusto (y necesidades o costumbres) del usuario final, será mejor que no cambies el valor de esta variable sino ajustes tu configuración regional. Si no queres que el programa se ajuste a la configuración de cada equipo, sino que tenga la propia, será mejor que también ajustes, por lo menos, el ThousandSeparator, que es el simbolo que se usará para formatear números con separador de miles (',' o '.').
Hasta luego.