What we did at my customer is the following:
- Add a custom checkbox on the appointment: “Send meeting request”, unchecked by default
- With a plugin, make sure that for every appointment, the subject is appended with a tag like ” – DONOTSENDMR”
- Create an Exchange Transport Rule that prevents any calendaring message to be sent whenever the subject contains that tag
- Make sure that when the checkbox is checked, the tag is removed, thus allowing the meeting request to be sent
Of course, doing so means that the tag will be synced as is in the calendar.