Поплавки имеют только определенный уровень точности, вы можете выйти за пределы того, насколько точным может быть тип данных с плавающей точкой. Вместо этого попробуйте использовать DOUBLE.