[JavaFX] Posição do cursor de Slider na vertical não reflete valor

Olá:

Tenho em Stage composto por um Checkbox, Label e Slider. O Label exibe o valor de Slider e o checkbox altera o orientação do slider (vertical ou não). Segue-se o código:

package testejavafx;

import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.Flow;
import javafx.scene.control.CheckBox;
import javafx.scene.control.Label;
import javafx.scene.control.Slider;
import javafx.geometry.VPos;

function formatar(value: Number): String {
 "{%03.0f value}"
}

Stage {
 title: "Teste de Orientação do Slider"
 scene: Scene {
   var sldValor: Slider;
   var checkVertical: CheckBox;
   width: 300
   height: 200
   content: [
     Flow {
       hgap: 10
       vpos: VPos.TOP
       content: [
         checkVertical = CheckBox {
           text: "Vertical"
           allowTriState: false
           selected: false
           vpos: VPos.TOP
         },
         Label {
           text: bind formatar(sldValor.value)
           vpos: VPos.TOP
         },
         sldValor = Slider {
           min: 0
           max: 100
           showTickLabels: true
           showTickMarks:true
           majorTickUnit: 20
           minorTickCount:2
           vertical: bind checkVertical.selected
           labelFormatter: formatar
         }
       ]
     }
   ]
 }
}

Quando a orientação está na horizontal o valor reflete a posição do cursor do slider.
Entretanto quando a orientação é alterada isso deixa de acontecer. Na imagem abaixo, vê-se que quando a posição está em 20, o valor é 80; quando a posição está em 40, o valor é 60. Quando altero o min e o max para 10 e 80, quando o cursor está posição 50 o valor é 40, na posição 30 o valor é 60.
Alguém já viu isso antes? como corrigir?

Descobri que isto é um bug da versão 1.3. Ele está registrado no bugtrack do OpenJavaFX, aqui (precisa estar logado).
A solução temporária que eles propõem é que na função labelFormatter faça-se um calculo de correção dos labels. O meu código ficaria assim:

package testejavafx;

import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.layout.Flow;
import javafx.scene.control.CheckBox;
import javafx.scene.control.Label;
import javafx.scene.control.Slider;
import javafx.geometry.VPos;

function formatar(value: Number): String {
    "{%03.0f value}"
}

Stage {
    title: "Teste de Orientação do Slider"
    scene: Scene {
        var sldValor: Slider;
        var checkVertical: CheckBox;
        // Função de formatação: Se a orientação for vertical faz um cálculo envovendo o Slider.min e max.
        var formatarLabels = function(sliderValue: Number): String {
                if (checkVertical.selected) formatar(sldValor.max - sliderValue + sldValor.min) else formatar(sliderValue)
        }
        width: 300
        height: 200
        content: [
            Flow {
                hgap: 10
                vpos: VPos.TOP
                content: [
                    checkVertical = CheckBox {
                            text: "Vertical"
                            allowTriState: false
                            selected: false
                            vpos: VPos.TOP
                        },
                    Label {
                        text: bind formatar(sldValor.value)
                        vpos: VPos.TOP
                    },
                    sldValor = Slider {
                            min: 0
                            max: 100
                            showTickLabels: true
                            showTickMarks: true
                            majorTickUnit: 20
                            minorTickCount: 2
                            vertical: bind checkVertical.selected
                            labelFormatter: formatarLabels
                        }
                ]
            }
        ]
    }
}