To my understanding of vectors, the look at vector should be camera's position substracting the position of look at target.
That's incorrect. The look at vector should (position of look at target) - (camera's position).
The vector AB = B - A.
cam.mvFacing = OgreVec3ToBourneVec3(mSceneMgr->getSceneNode("Worker00001Node")->getPosition()) - cam.mvPosition;
But it looks perhaps at the opposite direction. But I have tried to reverse the order of subtraction to no avail.
What exactly happens when you reverse the order of subtraction?
Does Ogre and Dolly use the same coordinate systems? Maybe you are mixing Left hand and Right Hand coordinates...