I had the same problem but only on certain database - all of them had the tables defined and created the same way but they had different data. My errors...
A clarification on Banker's rounding for everyone - 3.4546 rounded to two decimals IS NOT 3.46. It should be 3.45 - you do not work backwards and round from right...