Question: Why does an internal page sometimes rank higher than the home page?
Answer: The search engines rank each page separately. They don't distinguish between the home page and the other pages on the site. For the most part pages other than the home page will be more specific as to what they are about and will therefore rank better for that reason. The other factor is the number and relevance of incoming links and sites that have lots of relevant links to their home page from elsewhere on the web are the ones where the home page ranks better.
This article written by Stephen Chapman, Felgall Pty Ltd.