DAViCal can be made to work with fastCGI with a simple alteration to the fastcgi.conf file.
Find the FastCgiConfig directive FastCgiConfig -minProcesses 1 -maxProcesses 10 -singleThreshold 100
Add "-pass-header AUTHORIZATION" to the end
This is required because FastCGI doesn't by default pass the authentication headers to the caldav.php script, and authentication will therefore inevitably fail.
You will also need to be running version 0.9.4 or later, which includes specific changes to support the FastCGI authentication variables. Alternatively you can apply the patch here to 0.9.3.
DAViCal is not a web application, in the sense of something like Drupal, Joomla, Flickr or Facebook. Rather, it is an HTTP application, needing full access to various header information passed to the webserver by the CalDAV client software.
Many web application stacks tend to assume that applications will only use GET and POST methods, for example, whereas DAViCal needs to receive the full request data for many other http methods including PUT, MOVE, PROPFIND, PROPPATCH, REPORT, MKCOL, MKCALENDAR and more.
As a result you may have increasing difficulty getting more obscure parts of DAViCal's functionality to work with FastCGI, such as creating calendars from within CalDAV client software.