Ok, fixed the problem. Added some matrix getter code to when the 2D and 3D scenes are initialised so I can restore the various matrices before rendering each pipeline. I also fixed up the camera set transform code so I could use a quaternion (by using a Matrix4 initialised from the quat).
the upshot is that SFML basically handles initialisation of the render window and drawing some 2D stuff into it (mainly text). I handle the rendering of my own 2D UI stuff via a call to my renderer class to render a rect, but SFML provides the texture binding.
All in all, a fairly acceptable method of working so far. Now just fixing up my other component interfaces to use Horde and then I'll get on with the Brain insertion UI (yes, my game involves plugging brains into agents).
Cool! I cant even begin to imagine porting this thing to the Mac though

or Wii/PS3/Xbox360.