Firstly, i dont like this notion of 'The best players should play for the top 9'. Cricket is going the way of many other sports, losing touch with its roots in pursuit of commercial and financial success. Although already eroded, the dream of representing ones county still burns in all youngsters, and a high number of professionals. Taking that away by having the best at the best would do serious damage. Firstly the 'Best 9' (how do you judge that, does one poor season relegate you to years of inferiority?) will find fewer youngsters coming through the ranks due to the chase for megastars. The lesser 9 will find it difficult to break into the top if their best players are always poached, leaving them with less revenue and less to put back into grassroots cricket. I cant see who would win from this.
Look at Durham. I'm sure people see them as not one of the big 9, and they've only been playing FC cricket for 20 years or so.. Its taken that generation of struggle to raise local interest in the game, and bring through players such as Collingwood, Harmison and Plunkett (ok, clutching at straws there). Its this struggle but ability to rise to the top that keeps the game interesting, for fans and prospective future stars.