Have a look on my site for a working callback routine that works!, (I had to come back to it a number of times!)
I've also implemented custom surface types and an "behaviour matrix" I'm not sure if thats in the public version tho.
Do you have a direct link? I looked but can't find it.