What's wrong with storing it as a float? I'm not saying you're wrong, I just genuinely don't know. If you could explain/point me to relevant literature I'd be grateful.
They are rounded, and doing arithmetic on such numbers leads to compounded rounding errors that you don't want to see when dealing with money.
Another problem is that the mantissa of floating point numbers is limited (52 bits for doubles), which can lead to truncated numbers, another big no no.
Also, all Bitcoin calculations are supposed to be done in integer Satoshis.
And I really don't mean to pick on you, but that this isn't better known is why I worry when I see random sites popup offering financial services.