Olá Mauro,
O cálculo do fatorial no código está correto. O problema é que System.out.print exibe o resultado apenas no console, e não na interface gráfica do Swing.
Para mostrar a descrição da fatoração na tela, é necessário montar o texto em uma String durante o laço e, ao final, exibir essa String em um componente Swing, como um JLabel ou JTextArea.
Ou seja, em aplicações com interface gráfica, não se deve usar o console para saída de dados, mas sim armazenar o texto em uma variável e apresentá-lo na interface.