The first priority for social workers is the welfare of the child, not you. So right now they are solely focused on placing your child in a safe and loving environment with experienced foster parents and working with your child to identify exactly what happened.
Yes they will work with you too, but you need to approach them, don't wait for them to approach you. No it shouldn't be like that, but social services is overstretched to its very limits and it's all they can do to focus on the wellbeing of any child who is at risk.
You want him back, so you need to prove that you are capable of providing him with a safe environment.
It's good that you are going to see your GP. When you do so, ask that they make notes of your appointments and what was discussed as you can use this as evidence. Also, make sure you phone the social worker and let them know that you have an appointment and what it is for.
Tell them what you have just posted; "I know my judgements are utterly shit, I see that now, I see I need to work out why I make the decisions I do, to identify risks, I put my son in danger, he got hurt as a result, it is my fault he got hurt." they need to hear this. So tell them. Then tell them what you are going to do to change that. Ask them for help with that. Ask them if there is anything else you need to do.
Make that phone call now and everytime you make a decision or an appointment, phone them and let them know. And make sure they write it down.
You will have to work hard to get your son back, but that is what you said you would do. So yes, you have to be strong, you have to put on a front, you have to be pro-active in demanding help, you have to take things into your own hands if that help is not forthcoming, you have to jump through many hoops. So keep jumping, there are no short cuts.