It works, but it requires two clicks to iconify the window again.
The solution worked for me is:
internalFrame.setSelected(true);
internalFrame.getDesktopPane().getDesktopManager().deiconifyFrame(internalFrame);
internalFrame.getDesktopPane().getDesktopManager().maximizeFrame(internalFrame);
internalFrame.getDesktopPane().getDesktopManager().minimizeFrame(internalFrame);
internalFrame.moveToFront();