imo, you need to team up with your DH. He may not be great at disciplining bad behaviour, but disciplining is about rewarding good behaviour too.
Use his strengths, his kindness and patience (can never have too much patience with DC).
Back him up 100% when he attempts to discipline DD. Expect nothing but complete respect from your DD to yourself and your DH, and limit the amount of time you spend at your mothers, especially if your mother is so negative towards your DH.
I am getting the feeling that you find it difficult to stand up to your mother, and get annoyed at her pointing out your failures where your DD is concerned (in her opinion) and then you take your frustration out on your DH, because you cannot bring yourself to be direct and tell your mother to beak out.
If your DD is present when you are berating your DH, please please please stop criticising him when your DD may be able to hear, right from this minute!! If your mother belittles him to you or to him, remove your DD from her house, or ask your mother to leave immediately. This will teach your DD by your actions that your DH is not to be disrespected by anyone!!
Your DD is watching and taking all of this in. Why on earth should she respect a man whom no one else respects, in fact her own grandmother thinks he is useless and too soft, a bit of a drip, and can't control DD.
Her mother's opinion of her father mirrors her grandmothers, that is that he is rubbish at discipline, a useless dad and can't control DD.
Your comments to your DH about what a failure he has been with his DS is a perfect example of how little you actually respect him. I felt very sad for your DH when I read that.
I can't imagine why your DD would behave any other way with him.
OTOH, I think you are too keen to gain your mothers approval, and seem to think your mother has the answers to how to regain control of your DD.
If I was your DH, I think I'd be a very unhappy person.
I don't honestly think your DH is too soft for you and your DD. I just think that you both take advantage of his gentle nature. 
Does your DH see his DS at all?