The JFrame and components are created and setup in the constructor of sub class of JFrame. The frame and its components are never modified at any other point in the program.
This could be the problem, and I guess it maybe is the root of the problem on my machine.
You create the JFrame and your components on the main-thread, not on the EDT. This is a violation of Swing's threading rules, and it is best-practise to even do component setup in the EDT.
The rendering itself can be done by any thread, because as far as I know all Java2D-related stuff is thread-safe.