Maybe you should just preemptively be too busy for awhile. It sounds like you have a really full schedule, and most if it doesn't sound like things you can let slide.
I'm not sure if it would help, since I don't know your SIL, but perhaps she doesn't realize just how busy you actually are? That's giving her the benefit of the doubt, which I'm not sure she really deserves. No matter how busy you are or aren't, it's still rude to constantly cancel plans at the last minute.
I've known people who do this, and I can only assume (after a very long time) that they must not think about or care about my feelings on the matter. Or my time, if it comes to that. With those people, I can't make them care, so I schedule plans with the assumption (on my end) that they probably won't actually happen. It's not a very nice thing to do, but I haven't been able to come up with anything better. With some of those people, I've actually just stopped trying to see them at all.
It's probably hard to just stop talking to your SIL, since she is a part of your family, but if you go a long time without seeing her (or even trying to see her), you then have a chance to explain why when she comments on it. It gives you a chance to tell her, "Well, SIL, I love spending time with you, but I can't rearrange every Saturday in a month to accommodate you. I've got a lot of other things I have to do, and when you kept canceling our plans at the last minute, I had to stop making them or I wouldn't get all of the other things done."
I still think it might be good to try and schedule some "backup" things that don't require anybody but you. That way, if you can't meet up with your SIL, you're not wasting the time, either.