Most shops have 2 types of appointments: waiting and drop-off. The scheduler should distinguish between these two VISUALLY. The waiting appointments hold their place, blocking out the appropriate hours starting at the correct time. The drop off appointments automatically fill in the blank spaces, starting at the beginning of the workday and flowing around the static waiting appointments. If this could be accomplished, the schedule would perfectly match the way shops do business. When you run out of spaces, you're out of available time. If a new appointment doesn't fit, you need to move it to another day.
BTW, I've been doing this very thing every day for the last 20 years. Every day I represent my work day on a white board to track all active jobs throughout the steps of repair per technician. The first block for each technician is a representation of an 8 hour work day. I first put all the waiting appointments in their respective slots, then add all the drop-off scheduled work around the waiters. Finally, I add any leftover work to the mix. THIS WORKS FLAWLESSLY. I know exactly how my day is loaded. I know exactly if I can take in any more work. I know exactly if I have to call someone to reschedule.
Looking at the schedule, it appears that with some tweaking it might become the best thing to our industry since the ratcheting wrench.

Thank you for your consideration.
Ric