The 'angle' of a (JavaFX) RotateEvent is interpretated as "positive values for clockwise rotation", while the 'rotation' value of an SWT GestureEvent is interpreted as "negative values indicate clockwise rotation".
To compensate this, FXCanvas would need to invert the rotation value of the source GestureEvent when computing the angle value for the target RotateEvent (within FXCanvas.sendRotateEventToFX(int, GestureEvent)), which is unfortunately not done. As a consequence, rotation angle values are inverted compared to a standalone JavaFX application.