Como clonar um objeto da Swing?

Tenho o seguinte problema, tenho em uma tela um Jpanel que contem campos, labels e buttons, porem eu preciso criar uma copia deste jpanel e logo após colocar esta copia em outro lugar da tela, mas não estou conseguindo.

Criei um classe que se chama ClonePanel e faz extends para Jpanel,e implementa a Cloneable, então criei um novo objeto do tipo ClonePanel, e tentei fazer cast do outro Jpanel para este. assim…

ClonePanel clone_painel = (ClonePanel) jPCliente;

e assim poderia clonar ele.

ClonePanel clone_painel2 = clone_painel.clone();

public class ClonePanel extends Pane implements Cloneable {
    @Override
    public Object clone() throws CloneNotSupportedException {

        try {

            return (Object) super.clone();

        } catch (CloneNotSupportedException ex) {

            throw new AssertionError();

        }

    }
}

mas na execução o cast da erro, alguém sabe o porque o erro ou tem uma melhor solução?

Observação: estou fazendo assim pois pode ser necessário clonar o Jpanel mais de uma vez.