Too right last time she came she cleaned out my shampoo, face cream, deo and substituted it for cheap cuk - this is one seriously unfortunate lady - never been married, never had kids, and never bothered with mine until they grew up and then she asked them for money. My D told her where to go... wish I had her guts oh well - and its DH's death anniversary I'm sure she is doing this just for spite. Need more wine stuff the tea.. nightxx
Um, I know that Americans are not known for our good manners, so to speak, but her issues should not be yours. I think you need to look at this differently, like a challenge. She has to have some money to book a flight last minute. She is inviting herself. I say she is free labor and if she wants to talk to you, she can do it wherever you happen to be. Offer to pay for NOTHING!
Put your personal bathroom items in a drawer in your bedroom. Put a thing of dog shampoo in your shower. On your DH's day, take time for yourself and have something special for yourself set aside. Make her work or she can feel unwelcome, let her make the choice. It is okay to stick up for yourself! I would not rearrange my life for someone I did not invite to my house. They would have to sit in the house by themselves or come along on my day to day chores. That is what you should do in my opinion. FREE LABOR or at the very least, you can start some of those chores that you have been putting off and if she never leaves the couch, oh well.
Dog shampoo might be a little far

But otherwise I agree.
It is so rude to just invite yourself to someone else's house