Oh turtle, I'm so very sad for you and angry at your DH. Alongside all the normal stresses and strains of becoming a mum, which can bring anyone down, you have had to put up with a DH who goes off on holiday on his own (missing your scan!) but doesn't let you even have one evening off, who expects you to do all the housework and all the childcare despite him only working the hours of about half a working week himself, and who has never, even just once, been thoughtful enough to do anything for you without you asking - he only ever seems to do things for you and P if you beg. And remember, this is not just some random person who couldn't give a monkeys about you, this is a man who is supposed to love you more than anyone else in the world and made a promise in front of your friends and family to be there for you, for better or worse .
Some men can be a bit crap around babies, but this is way more than being crap: his behaviour is heartless and selfish and cruel.
Does he realise what a terrible example he is setting to P, treating his wife/P's mum so badly? If things don't change, you run the risk of P growing up thinking it is acceptable to treat you (and potentially his wife if/when he marries) like that
I agree with others - if you think there is any chance of things getting better, and if you want them to, then counselling is probably necessary - you have tried so hard, but he doesn't seem to be capable of listening to you on your own, so I think you need some outside, neutral help.
Take care, keep smiling, keep giving your lovely boy big hugs