Not sure what is happening here...I placed your testpage here:
And it is not validating correctly on my side.
I guess the number notation runs seperate from any user computer regional settings. When I use
tb.NumberFormat.DecimalSeparator = ","
then the validation is running OK on my side, despite I have set
<globalization uiCulture="en-US" culture="en-US" requestEncoding="UTF-8" responseEncoding="UTF-8" />
in my web.config
I wonder what is happening here...I hope you can shine some light on the case.