I haven't really found any png examples in the demo directory. However, there is a nice example on the cairo website @ http://cairographics.org/samples/. In particular, I needed something that does exactly what the "imagepattern" example does, and have rewritten it from C to haskell. Please let me know if I can post the example in the demo section for others to see.
                                    Hristo Asenov