By the way. I had to change something in your template code index.php because the apc_type for each member saved in the database get the 'title' of the Profil group instead of its 'id'.
That mean that the var $template get nothing in the query :
$database->setQuery("Select template from #__comprofiler_accesscontrol_groups where title='$user->apc_type'");
instead of
$database->setQuery("Select template from #__comprofiler_accesscontrol_groups where groupid=$user->apc_type");
I'm very satisfied with your component. I make few modifications due to my needs.