I figured it out. I used DBIx::SQLCrosstab::Format for formatting the result into a list of simple hashes. Apparently this module cannot handle multiple operations. Simply calling get_recs() on the Crosstab object gives a perl data structure which does contain all the data. I'll go ahead and use that instead of the list of simple hashes.
Maybe this can be fixed in a next version of D::C::F
Re^2: SQL Crosstab, a hell of a DBI idiom