I believe one of the large reasons why it took so long is that the linux graphics stack had to be completely redone (KMS etc) before this could be started, and decent open source drivers had to be developed as well. I also think a sufficient number of capable people with funding had to feel like there was no hope in salvaging Xorg.