Give the top guy 3000 and the bottom guy 0, and use linear interpolation based on rank for everyone else. That gives you an initial rating r_0. Then apply your method to get their base rating r_1. Here's the trick: if this system works at all, r_1 is a better estimation of a player's rating than r_0 is. So you could apply the system again using r_1 to calculate averages rather than r_0, and get an improved rating estimate r_2. Do you then use r_2 to calculate averages to get r_3?
OK to restate the above, one could use your rating system, or for that matter, the existing one, and then as a second step apply mine. (Although my step wouldn't make sense until a player had played a number of games.) I think I'm on the same page with you now.
As far as the recursion aspect (r_3, etc.) I would say no. Only applying an additional method completely independent of the other two would make sense.

starting with win loss is better than starting with random numbers, IMHO. Both introduce error, but the error would seem to be greater with the random numbers.
I just wasn't clear exactly on how the two systems would be integrated. Any initial rating can't be based on win-loss record.