I'm working on a (somewhat) related problem and thought I'd offer a suggestion based on my own work. I haven't used the face detection sample, but I assume it uses a cascade classifier. That's a great solution for finding a face, or eyes, or (in my case) a hand, assuming the classifier was trained on robust data including a large variety of images of the object from various angles, lighting conditions, etc. So first off, if you want to detect eyes, and you have some particular angles that are giving you trouble, you could work on training your own cascade classifier that's better suited for your application.
Another thing to note wrt moving images, once you know where an eye is, it typically doesn't move very far from frame to frame. So if you're looking to track eyes in a video for example, you may get better results by using the cascade classifier only as the first phase, and then tracking it from that point onward using an alternate approach. In my case, I find the hand using a cascade classifier, then I basically monitor a loose bounding box, updating it each frame to keep the hand inside the box.
Just some ideas to consider.