I am facing a similar problem where the way Java treats decimal -according to this post - is creating the issues.
The result is that once I start rounding and summing in the billions range in my BIRT Report. I will have minor difference which are not accepted by my internal stakeholders.
@iCFO - do you have any suggestions?