Maybe try: Change all your "Double" variables to "Currency" variables.

Uncertainty like that is a known issue of digitized math.

Alternately, Round the result of every step of every calculation to the fifth decimal place.