Prueba a agregar la función Trim, puede que el usuario esté escribiendo solo espacios, es decir:
, con lo que tu validación fallaría.
Lo mejor sería utilizar un control que este diseñado específicamente para manejar números, con el TjvValidateEdit solo cambias dos propiedades y listo, no tendrías que hacer ninguna validación, ni hacer conversiones, ni programar nada.