I did a test, and noticed the same thing happens for the BufferedImage.getGraphics() method.
This prints the message in the correct font and color:
BufferedImage imageBuffer = new BufferedImage( 640, 480, BufferedImage.TYPE_4BYTE_ABGR );
Graphics g = imageBuffer.getGraphics();
g.setFont( new Font( "Courier", Font.BOLD, 16 ) );
g.setColor( Color.RED );
g.drawString( "TESTING", 100, 100 );
This on the other hand just prints the message in the default font and color:
BufferedImage imageBuffer = new BufferedImage( 640, 480, BufferedImage.TYPE_4BYTE_ABGR );
imageBuffer.getGraphics().setFont( new Font( "Courier", Font.BOLD, 16 ) );
imageBuffer.getGraphics().setColor( Color.RED );
imageBuffer.getGraphics().drawString( "TESTING", 100, 100 );
That would explain why it happens in the frame buffer's getGraphics() method, since it is backed by a BufferedImage.