It is not meant to be accurate, it is a simply there to make it a little easier for newbies in low level zones, and make it harder for high levels with high level mobs.
I suppose aggro is based on level, class, race and location etc in live. But I wouldn't know where to start. The above works fine for me, though. Works well in befallen, works well in hate.
Anyway, the code's there just need to customize the numbers to however you like. Post it if you get something good