This is what I am doing, which works 99.999% of the time:
((int)(customerBatch.Amount * 100.0)).ToString()
The Amount value is a double. I
You could use decimal values for accurate calculations. Double is floating point number which is not guaranteed to be precise during calculations.
decimal