No, you are correct I do not take into account the 2% withdraw fee.
To be honest I was just adding the NiceHash numbers to give me a rough idea of how they are comparing. So far TMB is winning (and the gap is more than 2%). I will factor in that 2% fee from now on.
Then next thing to do is to actually record earning properly so that we aren't misled by the stats given to us by the pools!!
Having said all that, NiceHash has just overtaken TMB!! I need to get that pool switch code working

------------------------------------------
2014-07-16 13:47:51 Current Rate: nist5 0.0075
2014-07-16 13:47:51 NiceHash Best Rate: x13 0.0070
2014-07-16 13:47:51 Best Rate: nist5 0.0075 stay: algo still best
------------------------------------------
2014-07-16 13:52:52 Current Rate: nist5 0.0068
2014-07-16 13:52:52 NiceHash Best Rate: x13 0.0070
2014-07-16 13:52:52 Best Rate: nist5 0.0068 stay: algo still best
------------------------------------------
2014-07-16 13:57:54 Current Rate: nist5 0.0027
2014-07-16 13:57:54 NiceHash Best Rate: x13 0.0070
2014-07-16 13:57:54 Best Rate: x11 0.0066 switch: performance +138.9%
De-normalizing will probably be my workaround as well. Unfortunately it means the users have to update those values every time the pool changes the normalization factors.
When comparing NiceHash to TMB are you also factoring in the 2% withdrawl fee on TMB? I'm curious myself to see how the two services stack up but it will be a week or two before I have everything wired up.