OK, so my parents divorce was a nightmare, but my own split with DS1's dad was not. We were both very young when we had him (19) and once he was born we mutually decided that we were too young and that it wouldn't work. So we'd just be parents and friends. It's always been friendly and my ex has always realised that I've done much more for DS1. They've always had plenty of contact (including time spent with all 3 of us together) because it is friendly and there are no grudges.
My ex has even been supportive of us having to move far away for my work, and has been very accommodating. I think this is because he realises that he does just get the fun bits of parenting while I get the nagging and drudge work of parenting. I think as he's grown up, my ex has realised that he didn't do anything much when Ds1 was younger and that having him didn't affect his life the way it has mine, so he's willing to put himself out a lot. But, I'm not (and never have been) bitter about the fact that he wasn't grown up enough to have DS over night until he was 6 (and even then it was at my flat because I had to go away for work), which also helps. He's always been the best dad he could be and adores DS.
DS1 sees his dad in the school holidays, and plays Xbox with his dad regularly (chatting away on Xbox live). I drove up to pick up Ds1 from his day's yesterday (he usually brings him down and picks him up himself, but there were work-related issues this time so I went and got him). But his dad is going to drive down for DS1's birthday on Wednesday and we're all (DS1, his dad, his day's girlfriend, me, DH and DS2) are all going out for dinner to celebrate.
So, I don't think Ds1 has been at all messed up by not having a traditional family. He's quite happy with it all because it isn't an emotionally abusive nightmare (or any of the other things that mess children up). It's just what he's used to, and everyone gets on and thinks about what DS1 wants and needs.
The problem is that when most people split up they are both really hurt, and that makes it difficult to do what's right for the children. If there are no children, they can just go their separate ways. but where there are children, that's impossible. Even where one parent is trying their best, the other can bugger it all up by behaving badly.