I don't know so much about glut, but I'd guess that this might be the problem:
glutPassiveMotionFunc(mouseMovement);
Is there some "active motion func" too? Just a hunch.
You can try this just by removing that "if (LMB)" line from your mouseMovement() function.
Also this might be the problem:
int xDiff,yDiff;...Cam.Rotation.x += yDiff*0.3;Cam.Rotation.y += xDiff*0.3;
xDiff and yDiff are integers and you multiply them by 0.3.
What datatype Cam.Rotation.x and Cam.Rotation.y are? Hopefully they are floats, otherwise those lines above won't do anything.