encyclo - 3:28 am on Jan 9, 2011 (gmt 0)
There's nothing wrong with your setup, just that you have probably not altered your httpd.conf to give Apache access to /home.
From memory (can't easily check the specifics at the time of posting), you will have have an entry for <Directory /> which will have a "Deny from all", then another for <Directory "/var/www/htdocs"> which will open things up a bit just for access to files within the specified document root. You just need to add a similar entry for your paths.
Alternatively you can separate out sites with one Unix login per site and use UserDir public_html (old-skool shared hosting style), then set the Virtual Hosts accordingly:
cPanel is evil. I hate nesting document roots, even for subdomains - there's no reason to do so.