I've been working with ImageAlign in Mathematica 8 and I'm having trouble getting it working reliably. Perhaps there are some subtleties that I'm not yet aware of? Here's an example:
mandrill = ExampleData[{"TestImage", "Mandrill"}]
eye = ImageTake[mandrill, {50, 91} , {150, 190}]

Now ImageAlign is supposed to be able to align these two images, returning, say, the eye in the right place on the original image:
ImageAlign[mandrill, eye, Background -> Gray]

but it appears in the wrong place. According to the documentation, it should appear in the correct location, but it shows up in the bottom corner. There are Transformation options, but they seem to make no difference to the success of the function.
Strangely, I have been achieving some success with other images, although it's not consistent. Are there some restrictions that I'm not aware of?