I’m using Horde as my CalDAV server, and I’ve done things such as the following:
Have a long-time recurring event, such as daily work schedule that repeats every M-F at the same times. For holidays and days off, I would delete those days for that specific event in the calendar, yet DAVdroid would re-add it at sync. If I delete it for 1 occurance in my local Android calendar, Horde would show it still but struck out.
Another scenario in that same thing, I modified a recurring event, same one, to have an end time. When android synced, it deleted the entire schedule.
There’s definitely some issues when dealing with recurring events, at least with Horde. I have yet to check this out in any other CalDAV server (such as I also use owncloud, but rarely sync with it anymore, mostly files).
I had to go back to using Marten Gajda’s CalDAV-Sync for the time being to resolve this issue temporarily, as it works, in that respect, fully without issues with recurring event calendars.