In my limited experience, it's hard, but in most cases that isn't a problem. JavaFX is powerful, separating layout and styling from code via FXML and their CSS like language. If you want to style the application like a webapp it's a piece of cake, but if you want to style it to look native then you'll have to use stylesheets such as http://www.aerofx.org/
On the otherhand, with Swing all you need to do is add the following line:
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());