When Pain-giver and ice giver are on the same pet, the stat is always one less than it should be. For example, my Ice should have 58% ice damage, but only has 57. This is not the game just saying it's 57, but actually thinks it's 57. In that Snow angel's first hit will do 157 damage to the opponent. I did not calculate wrong. I'm also Fairly certain that this does not only apply to ice-giver, but every form of giver in the same way.
This is most likely a rounding problem. Without knowing your specific stats for each talent, I can't say for sure - but here is my guess. For example - Lets say Pain giver shows 5% and Ice giver shows 5% - but you are only getting 9% total right? That is because the REAL amount of pain giver might something like 4.5% and ice giver is also something like 4.5% (I am using these numbers as an example) - when you add them together you get 9%. But when you have them alone - it rounds up to the nearest whole number. You just don't see the decimals behind the scenes. This problem is not just on damage - but resist calculations also.