One reason it may be helpful for a product manager to have a CS degree and experience as a software engineer is that the engineers will be more likely to respect the product manager. They will believe that a product manager understands the issues that arise in building software systems.
A huge problem with software planning is that there are features that can be completely described, from the user experience point of view, in a few minutes. These features may take months to implement. I am convinced that this disconnect between something that is easy to describe and involved to implement is one reason that software schedules tend to be late. Someone with a background in software design and implementation is more likely to understand this issue.
Product managers are something that only a large company needs (I know that PMs tend to disagree). In a startup the founders are the product managers, designers and engineers. Only when a company reaches a certain size do you need someone outside of engineering that has the product vision.
I think that it’s safe to say that many software engineers, especially at small companies, do not see any role for a product manager, since in a small company, everyone is involved in product vision and the founders are the arbitrators of what is finally produced.
My guess is that one of the hardest parts of being a product manager is getting and keeping the respect of the engineering team. Without a software background, gaining and keeping this respect will be more difficult.