Today I found out that all my currencies have to be BigDecimal. BigDecimal helps with rounding etc. Double has all sorts of quirks and cannot be relied on, especially when dividing by 3.
The downside is that there is a whole lot of legacy code that needs to be changed. Could use this as an excuse to rewriting the application.