Object3D does have a function called setOrigin(SimpleVector)... Maybe you need to do that first... I am not sure~~ Maybe cube.setOrigin(new SimpleVector(0,0,0)); But then again, I always thought that this origin should be the default...
[edit]Oh right! I remember looking at your code, you did change the origin of your cube after creation... Maybe you should remove that line from your code and see what happens? I still do not know why you would have that problem since you did set it to 0,0,0