My MIL didn't come to my wedding shower OR my baby shower (6 years later!) for pretty much no reason. THe day of "Oh I'm sick and cant' come". WHich was a load of crap. I actually expected it, though, both times, so I wasn't shocked.
My advice - do nothing. If she shows, great. If she doesn't, move on. The thing is - the shower really is more for you than the baby anyhow. You're pregnant. The baby actually isn't here. Don't let this become a bigger thing than it needs to be. At least on YOUR end.
I do get it- there is an expectation of the grandmothers being there, and yes, she is absolutely petty about this. But her attendance isn't a requirement. Don't give her too much power here. Focus on who WILL be there.
I think the less you react to this and the less a big deal you make it, it will make more of an impact than if you flipped out, stopped talking to her (or whatever), etc. She's going to get it- her attendance isn't mandatory and you're going to move forward with or without her.
It 100% puts it on HER to decide how the future will go and how her involvement will be. She probably will pitch a fit at the next event where everyone is invited. But I think if you stand strong and say "Well, we'll miss you" and move on - again, that's going to make a bigger impact than trying to talk her into it for 15 mintues.
Talking to her, getting mad, etc only tells her that she has power and if she just keeps up at it long enough- you'll cave and do what she wants. And the fights will only get worse moving forward. Even if yo udon't give in. But if you FIGHT, it will only add to the problem.
Let her be petty and let HER miss out on her grandchilds life. That's HER choice. Again- focus on who truly, actively, wants to be involved.