Amigo, fiz isso a alguns dias atrás, façamos o seguinte eu te mostro a lógica e você implementa:
Você vai precsar escrever dois listeners, ou seja dois eventos de mouse e adiciona-los ao seu label, mas quais slompo?
Primeiro quando você clickar… opa o evento de clik, mas o Clicked ou um dos outros, vejamos o Clicked é ao finalizar o clik, mas pelo que entendi você deverá usar o Pressed, pois é ao manter o mouse pressionado, tá mas e agora, pense no seguinte. Ao manter o mouse pressionado devo ter armazenado ao posição atual do meu JFrame e comparar a cada movimento do mouse com a posição do mouse e substituir a difirença, fazendo então que o JFrame na verdade acompanhe o mouse.
OK, mas você não tinha dito dois eventos? Sim sim, tem um evento chamado mouseMoved, ta mas o que deve ter nele? Bom vamos revisar.
Ao clickar devemos armazenar a posição atual do JFrame, ok até ai tudo bem, então no mouseMoved devemos compara a diferença com a posição anterior a posição atual do mouse e subtrai ou somar, isto vou deixar vc pensar =D.
Tá mas como pego a posição do mouse, conheço atualmente duas formas, 1º Voce pode usar o objeto que vem como paramentro do evento mouseMoved. 2º Usar a classe MouseInfo.
Bom espero ter ajudado =D