Hi Greg,
Thanks for your reply. Actually, I have managed to get this by using the REST API - I just had to figure out a whole new language for accessing the json data via a dojo deferred request (esri.request). What I also discovered is that the REST API includes a "Legend resource" which publishes small images (swatch) for each layer in a service.
At first I created swatches manually using dojo canvas and the renderer info. But after some cross-browser problems I discovered the Legend resource and that seems to work fine (and was easier to build!).
Not something I would volunteer to do again, but certainly is possible!
Cheers,
Richard.
P.S. I am using v10.