I guess then that you are not using stored procedures?
I've looked at a couple of apps we have which don't use procs and I notice that often plan reuse just doesn't happen.
You probably need to examine the queries in the cache to see what's not being reused, probably a fairly tedious task. The proc cache will only grow to a certain %age of size so maybe you're actually getting what can be best described as cache paging.
Although the reuse of sql plans/ad hoc queries is much better now it's still not perfect - it's amazing sometimes to see the volume of queries which parametise for msdb.
[font="Comic Sans MS"]The GrumpyOldDBA[/font]
www.grumpyolddba.co.uk
http://sqlblogcasts.com/blogs/grumpyolddba/