This is often the problem with inviting people to existing plans. As I see it, the plans are what they are, anyone joining comes to them exactly as they found them.
To invite someone to come to a pre-arranged shopping and lunch should mean exactly that. It's not really a big problem if SIL and her daughter get themselves to your MILs, you pick them all up on the one stop, off to JL, off to booked restaurant (providing the booking can be changed from 2 to 4), home.
But if it now involves you driving to three houses to pick up, go to JL, pop to anywhere else those two fancy, and - actually - the restaurant is too expensive, so we will all have a lunch at the Hungry Horse, before you ferry everyone back home again, well, that's just not what you agreed to!
For the sake of MIL who probably hasn't considered all this, I'd try not to cancel unless they push you further.
OP - I would say happy to have them join for the JL trip and lunch. You're more than happy to update your restaurant booking to 4, or alternatively, if SIL chooses somewhere else, you can cancel your booking. If SIL is unwilling to choose somewhere else, and won't go to the existing place, no problem. We won't bother with lunch - let's grab a coffee and cake at the JL cafe and then head home. Do not be roped into choosing a different place. You already know no where you choose will be good enough/cheap enough/the right food/ambience etc.
Be clear on the time you need to go home. Bring a book. If MIL chooses quickly at JL and they want to spend time visiting other shops - no problem. As you said, you will need to be leaving at 2pm. You can wait for them in the cafe with your book. They want to spend longer? No problem. You have to leave at 2pm - but they can take the bus. As you said, you'll be getting off now.