This was completely down to personal stupidity (as I suspected). I had the package structure mixed up in my ObjectFactory class and therefore Glassfish couldn't find it to create the appropriate object. <grumble>why doesn't Glassfish complain if it can't find the object factory you have defined when setting up the custom resource instead of just returning javax.naming.Reference object back from the lookup?</grumble>
I can confirm that the two example resources linked to from this thread do work no problem.
[Message sent by forum member 'conradcrampton' (conradcrampton)]
http://forums.java.net/jive/thread.jspa?messageID=344285