not a question but hopefully valuable tip for people implementing surface automation.
When testing the application with image object recognition make sure your application is on the primary screen.
Without much thinking I was testing my automation yesterday on secondary screen and was wondering why the image recognition was not working. But then realized it must be the screen setup and the automation worked fine on the primary screen.
Hope this helps someone!