Here are 2 init scripts sent by Ćukasz (radicale.init + radicale.default) and Nicolas (radicale). I've never written any init script, but they seem to work quite well. Nicolas just said that his version was not working if "start" was called twice: the pid of the process does not change, but the pid in the pid file changes.
With the two solutions, start-stop-daemon needs to deamonize Radicale (with --background), as Radicale does not give the good pid when it is launched with the --daemon option. Another init script has already been written for gentoo, but I'm not sure that it's useful for you. I can send it if needed.
radicale
Description: application/shellscript
# path to radicale.py script # DAEMON=/usr/bin/radicale.py # user and group to run as # USER=nobody # GROUP=nogroup
radicale.init
Description: application/shellscript