God, HarryB, your situation sounds exactly like mine when my DS was born. My DH too refused to stand up to her too and in the end, I had to tell her what was what. She backed off like most bullies do when confronted.
I just do not understand why your MIL wants to make you feel bad. I don't actually think she wants to make you feel bad - what she wants is for you to let her have her own way whenever she wants it. And sounds like she is competing to be mum to your baby. God, it's such a horrible horrible feeling especially when you're a new mum and just fumbling to find your way.
This is unacceptable because it is your life, your baby and most importantly, your first precious first weeks with your baby. If you don't do something, you'll look back with unhappiness and resentment.
You're not a bad mother. You're just not being given the respect a new mother deserves to find her own way. If you need advice, you'll ask for it. What she thinks isn't important - you are the mother and what you think is important. If you don't make decisions for yourself, then you're not being a parent because you're passing responsibility to someone else.
You need to talk to her - tell her, don't ask her if it's ok, that she needs to telephone first before she comes over. Don't listen to the "I shouldn't need an appointment to see my own grandchild" crap either. It's your privacy being invaded.
Don't let her just take the baby from you or DH. It's a sign of her thinking she can do what the hell she likes. You're going to have to snap a few time for her to get the message. She can't recreate with you what she has with her daughter. You are not her daughter.
Regarding the snidey comments, just say, "Oh, that's a nice thing to say, isn't it?", "Luckily, DS thinks I'm a great mum and he's the only opinion I care about,". YOu must say something because she thinks she can say what she likes to you.
I hope it turns out ok and that you manage to enjoy this time with your new baby.