<p>Does anyone know how to use CruiseControl.Net to publish to an FTP server?</p>

I don't think there's a specific way to do this. You can of course always run the commandline ftp client in window from cruise control.net
One tip:
I found that stuff like this can be hard to set up and maintain in cc.net. There's a lot of trial and error involved and because you're working on a server every trial and every error can take a long time to debug. I usually have a very generic cc.net build setup that i can copy for all my projects that just gets the source from version-control and starts a nant build script. Because you can run the nant build-script on your local machine as well debugging it is far easier.