The usual approach for your scenario is to handle the server-side OnAppointmentUpdate event and do the necessary validations in the event handler. The AppointmentUpdateEventArgs that are passed to the handler have two properties - Appointment and ModifiedAppointment.
The Appointment property contains the original version of the appointment and the ModifiedAppointment contains the "future" version of the appointment i.e. how it would look like after the update. You can use the various properties of the two appointment versions to decide if the update is valid. You can then prevent the update by setting the Cancel property of AppointmentUpdateEventArgs to "true".
All this is possible with the current version of RadScheduler and we recommend this approach if it suits your scenario.
Please let us know if you need more help or information.
All the best,
the Telerik team