Relative merits of fixed point vs floating point computation?
The numerical accuracy of integers will only be better than the numerical accuracy of floats if the integer resolution is better.  Doubles have 52 fractional bits, so double-precision floats have a resolution worse than integers at around $2^{52}$, which is much larger than 32768 ($2^{15}$).  So, no, the numerical accuracy will not be better if you go to integers.

The second issue is speed.  The answer is: it depends on the hardware.  If you are running your program on a digital signal processor that has multiple fixed point multiply/accumulate cores then yes, it will be far faster in fixed point.  On an x86 chip, on the other hand, it will actually probably be slower in fixed point.  I did exactly what you are talking about once and saw my execution times increase.

After doing some searches on the internet I found out that that is common.  The reason is because it has a dedicated floating-point processor that isn't doing anything when you transition to fixed point, while the fixed-point hardware is shared with the regular fixed-point action, such as pointer arithmetic.

If you want to speed up the processing, the way to do it is to change from double-precision floats to single-precision floats.  That should produce a significant increase in speed.  That would, of course, reduce your numerical accuracy though.