If you really feel that you can't be nice to her, don't call her back. The worst thing you could do is bawl her out while she's giving you a gift.
I wonder if Sam is awful at parties. Perhaps he gets so excited that he ends up being a bull in a china shop. Perhaps he has some anxiety issues and can't deal with parties. Perhaps she just won't tell anyone that he doesn't handle these things well, and instead of sending regrets with no explanation, uses excuses.
Given separately, two of the excuses are "acceptable". The one where they changed their plans and didn't call is NOT. But put together, all the excuses seem to me to be that your son likes Sam a whole lot more than Sam likes him. Could it be that they are social butterflies and Sam has plenty of friends? Could it be that the mom doesn't consider your family to be important to them? I am wondering if she is conceited and considers your family to be unimportant in the grand scheme of her life.
I do know that sometimes there are circumstances that we just don't understand. You could give her the benefit of the doubt. Or you could just cut her loose. At the very least, if you DO decide to let her give a gift (if she even really has one!), don't tell your son. Email her that you will be home on a certain day at a certain time. Then wait. If she shows, she shows. If she doesn't, she doesn't. Let it be a surprise to your son.
And do your son and yourself a kindness, Bamamama. Don't invite this child to anything else. It just demoralizes you AND your son. The possibility that Sam might "grace" you with his presence just isn't worth it.
Dawn