Very interesting and mostly I would say its right on but there a few red flags such as Moya the the way at 29 Queerey at 33 and Donald Young at 49...maybe your formula is not perfect yet and needs some tweaking, still very informative and interesting what does your formula factor in, would you mind me asking what exactly your formula is?
sure, its rather simple.
For the hard court i take the players top 12 tournaments (based off the ATP best 18 tournaments minus the two slams and 4 masters series tournies not on hard courts). I take the atp points from the past year's play as would normally be taken in to account. If a player missed a masters series tournament because his ranking was not high enough, i substitute another "normal" tournament's points in its place.
The rest is easier shown by example:
Player USO 2007 AO 2008 IW 2007 Miami 2007 Canada 2007 Cincy 2007
James Blake 150 250 35 5 35 350
Madrid 2007 5 Remaining Non-Masters Tournaments Total
5 200 120 120 100 75 1445
Now Blake's is more simple than normal since his present results outweigh any points he would receive from his past tournaments. I use a modifier depending on the number of tournaments the player has played on the surface over the time period being considered to determine how many points the player receives for those past results. If a player receives enough points from one of these past tournaments then those points are placed in the non-master tournament section.
As a said rather simple. The problem with it is that it favors lower ranked players that would normally lose in the first round of a masters by enabling them to add points that they received from playing in a lower atp tournament or challengers. Also, good players that only play a few tournaments a year on hard courts are naturally hurt but i tried to counteract this by giving them a better modifier value on past tournaments. Its not perfect by any stretch but i gives you a rough view of how a player has preformed lately on a specific surface
the clay court rankings are roughly the same