There are many, many programmers who would never be able to run a software company.
I think that Joel may have purposely overstated the idea to make the case that unless someone understands software development they will have a hard time running the company.
I used to work for Symantec - it was traditionally a software company with a tech-savvy CEO. The investors were never fond of it. Then, around 2000, enter John W. Thompson - an IBM sales guy. He did wonders for the stock price, but pretty much decimated the development side. Since then not much development has taken place - mostly M&A with other development companies.
John Thompson may be a great business leader, but he does not know much about software or developers or how to lead them. Symantec is probably a lot larger than what the OP had in mind, but I think it reflects Joel's idea.
I would not go so far as to say one has to be or had to have been a developer, but it is important to understand the activities and process of a software company. The best I know of way to assure that is to have a development background. That is probably the point Joel was trying to make with his statement, but I could be wrong.
Running a company involves so many OTHER things aside from software development activities. Being a developer or ex-developer does not prepare someone for running a software company - but it is one small part of a set of experiences that helps one be successful.
In the end, for me, it boils down to:
Do you see the developer/development group(s) as just another overhead/cost, or are they viewed as essential to the business?