The solution set is not binary. LnGrrrR has made a good point, which I've been trying to make forever. Hybridize the Single Payor model.
Let the Single Payor handle the HMO functions...day to day routine checkups and treatments. The single payor piece will go along way to establishing some serious cost savings as well as increasing the quality of care by simply standardizing the back office processes. Everyone uses the same form. Every form goes into a uniform database. It's a no-brainer.
Then let the insurance companies do what they were designed to do....produce insurance plans that leverage risk across time. Freed of the HMO functions, they should be able to reduce premiums substantially and riding on the standardization from the single payor piece, pick up savings in administrative costs to boot.
.