Wudda, cudda, shudda. We can and will always wonder if we had X instead of Y would have made a difference. I learned to ask, "I did X, why didn't she use that as a stepping stone to get to Z?" There, of course, is no answer to that question. Nor is there any answer to the what ifs. The past is gone, done, over. It cannot be changed. You did what you could. Some of it was enough, some of it wasn't, some of it was too much.
Our children are more than just our children. They are individuals. They make their own choices. We cannot control them. The best we can is guide them. When we try to control them or their actions, we end up losing -- our self-respect and their willingness to let us even guide them a little.
Stands, worry about today and the future. Not your son's future, but YOURS. Your children are all growing. Their paths will be the paths they choose. You cannot control that. Be their guide, their mother, but don't try to be everything for them. They neither need nor want that -- not even your eldest son.
Quit worrying about the past. Work on you -- on trying not to control, on growing into a parent who is healthy and happy, accept what is.
It is not easy to detach. Sometimes it can feel like you're ripping heart out. For me to pat my daughter's hand and tell her she will find a way kills me. But to do anything else is a disservice to her. She WILL find a way. She will never become an adult if I constantly give her the answer, do for her, give to her. I'm here if she needs me. I'll listen, even give advice if she specifically asks. Otherwise, I listen and pat her hand. Detaching doesn't mean not loving, it means loving at a distance. It means doing what you can to help your child become an adult.