I've had mixed success with CalDAV connectors for Android and a self-hosted server. The apps that I bought didn't support self-made certificates very well, or not at all (certificate pinning would be ideal).
The best way was to create a new CA certificate and use that to sign the server cert. But after installing the new CA cert on Android, I got a non-removable notification that my calls and data might be monitored. I did this on the train to a "hacker" congress, imagine how surprised I was about the warning...
Can anybody recommend a CalDAV/CardDAV server? What does the hosted Flock service use?