Implementando Cursor em Java com alguma Transparência

Eu tenho 35x40 px. png imagem eu quero usar como um cursor personalizado em um aplicativo Swing. A imagem tem um brilho que contém valores de transparência alfa. O problema é quando eu tento usar o método convencional de usar oToolkit para gerar o cursor personalizado eu recebo pixels pretos onde os valores de transparência alfa devem estar.

Aqui está a imagem que estou usando para um cursor:https://dl.dropbox.com/u/1186703/cursor.png

Aqui está o meu código:

public static void main(String[] args) throws IOException {

     new Sandbox().gui();

}
private Cursor cursor;

private Toolkit kit;

private Image cursorImage;

public void gui() {

    kit = Toolkit.getDefaultToolkit();
    cursorImage = kit.createImage(getClass().getResource(
            "/aurora/V1/resources/cursor.png"));

    cursor = Toolkit.getDefaultToolkit().createCustomCursor(
            cursorImage, new Point(0, 0), "CustomCursor");

    setSize(800, 800);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setLocationRelativeTo(null);
    setVisible(true);
    setCursor(cursor);
}

Aqui está o resultado atual:

Editar parece que este método não funciona bem em várias plataformas, por exemplo, o Windows LAF não suporta semi-transparência. Portanto, estou procurando por qualquer solução para fazer isso funcionar no Windows, supondo que essa implementação funcione no Mac OSX, posso especificar no código qual implementação usar com base em qual sistema operacional o aplicativo está sendo executado.

questionAnswers(4)

yourAnswerToTheQuestion