I learned to be suspicious of any posts that said things like "This should work!" instead of "Here are step by step instructions for what I actually did that worked for me under these conditions on this date." Things that work for Windows don't necessarily work for Macs. Things that work at one time, don't necessarily work at another time.
Sometimes there was just one little detail missing, obvious afterwards but undocumented and costing an hour or two of messing around to find. Sometimes I gave up on a promising solution (such as radicale) because I just couldn't find that one missing step. That's why complete documentation of someone's experience is so valuable for someone trying to recreate another person's success.
Here's what worked for me (on Jan 2019), a setup that used apache, DAViCal, postfix, dovecot on CentOS 7 in VirtualBox on macOS 10.14:
"Replacement of macOS Server: Calendar, Contacts, and Mail" https://7402.org/blog/2019/replacement-macos-server.html
It was broken by the end of year due to changes by Apple, requiring the following fix (as of Dec 2019):
"New self-signed SSL Certificate for iOS 13" https://7402.org/blog/2019/new-self-signed-ssl-cert-ios-13.h...
Good luck. It's satisfying to get one's own server working, but it might take on-going maintenance.