GM's woes are simply a combination of bad business choices/bureaucracy coupled with average products. GM currently has, what, 8 divisions? And in those division are about 80 models of cars, with many that crossover between divisions and many more that share platforms across divisions. That alone dilutes each brand image and raises operating costs and company complexity. Add to that an unwillingness to stand up to the UAW and liquidations of GMAC and their supply of cars through the employee sale this summer, and you've got GM as it stands now.
GM cars aren't really that bad, but that's just it: they aren't good or bad. In order to win back consumers, GM needs to do more than just match the other car makers, it needs to create cars that are desirable and better than anything Honda or Toyota or Nissan can make. Otherwise, why would anyone choose a GM car? It may be too late for that though, with GM taking such massive losses in capital. There just plain isn't time left to design a nice car.