Timer multi telas, como implementar?

Eu preciso implementar um Timer que seja exibido em 2 frames diferentes exatamente o mesmo horário de forma sincronizada.

Da forma que eu fiz funciona para uma tela, porém a outra não fica sincronizada.

Segue o meu Código:

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import javax.swing.JLabel;

public class Cronometro {

	private static Cronometro cronometroInstance = null;

	public Timer timer;

	private DateFormat formato = new SimpleDateFormat("HH:mm:ss");

	private Calendar calendario = Calendar.getInstance();

	private byte contagem;

	public static final byte PROGRESSIVO = 1;
	public static final byte REGRESSIVO = -1;

	public static Cronometro getInstance() {
		if (cronometroInstance == null)
			cronometroInstance = new Cronometro();

		return cronometroInstance;
	}

	private Cronometro() {
		this.timer = null;
		this.contagem = 0;
	}

	public void configurar(String pTexto, byte tipoContagem) {

		Calendar calendar = Calendar.getInstance();

		Date data;

		try {
			data = formato.parse(pTexto);
			calendar.setTime(data);
		} catch (ParseException ex) {
			throw new NegocioException("Não foi possível converter esta data/hora", ex);
		}

		this.timer = new Timer();

		this.calendario.set(0, 0, 0, calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE),
				calendar.get(Calendar.SECOND));

		this.contagem = tipoContagem;
	}

	public void iniciar(JLabel pLabel) {
		TimerTask tarefa = new TimerTask() {

			@Override
			public void run() {
				pLabel.setText(getTime());
			}
		};
		
		this.timer.scheduleAtFixedRate(tarefa, 0, 1000); // 1 segundo
		this.timer = null;
	}

	public String getTime() {
		calendario.add(Calendar.SECOND, contagem);
		return formato.format(calendario.getTime());
	}
}