See, your son even sees it. YOU ARE MORE THAN ENOUGH. The ideal of the perfect family is not the only way to have a happy family and a well adjusted kid and your kid is HAPPY. He loves his mom, the special bond, and anything else will ever be an addition, for the both of you, not a completion.
Dating is a thing not because we have to marry the person because they will stay and not go. Dating is to make sure your lives mesh, you bring out the best in eachother, you have a mutual love and respect. Then, if you find that, you marry.
I think you might be the one person who beats herself up worse than me. We are humans. We make mistakes, we learn. We can't punish ourselves for not being "perfect". We all mess up, we all have great accomplishments too. Life is a learning curve, we weren't born knowing everything and always the right thing to do. Should be all punish ourselves?
You have nothing to make up for. You both made mistakes. ANd you didn't cause him to make his.
You are more than enough. Ignore the ideals. Look at your life. You have a lot to be proud of and happy about. You have wonderful accomplishments. Like that son of yours. And how you stand up for him.
Try celebrating those instead of beating yourself up for your mistakes.