Hehe. MySQL running on innodb tables with numerics should be fine for payroll. I'd still choose a different db (I'm sure you already knew that) But honestly, with proper testing and all that, mysql/innodb should be fine. As long as innodb is still a part of mysql.
I do know that Microsoft, at least until recently, ran all their payroll on an AS/400 machine.
If you get a chance, write some simple benchmarks where you do a lot of simple math on floats and numerics and compare. generally the floats will win. However, some databases use some shortcuts to speed things up that will keep reasonably small numerics in the same range as ints / floats.
They're really two different types for two different things. Generally, the magnitude of a float can be quite high at little or no cost, while the precision of a numeric can be quite high, but it always costs, cause you're always storing the whole number.
No matter how big a numeric gets, (i.e. a number like 123897612398762349876234982736423) you'll either get an overflow, or the exact same number back out of the system. With a float, you'd get something like 1.23897612398E26 or something like that.