In the Active/Inactive Label box, it returns whatever is typed in that field.
That's by design. The active and inactive labels can't be variables. They're literally text strings that can change depending on the state of the label. Think of a button that is a power toggle that can change the text on the button to say "On" or "Off" depending on the state of the reference variable.
This is why I said to use a couple labels stacked one on top of another. Use your volume variables as the regular labels in Label Styling. Use whatever reference variable you like to monitor state, and use the same one for both buttons. Don't put any text in the active/inactive fields.
On one label in the active and inactive state sections set the opacity of one at 100 and the other as 0. Do the opposite for the other label. If you stack the buttons on top of each other only one will ever be visible...the volume of the current active device. If you want this to act as a button you can put another button on top of those labels and make it invisible by setting the opacity to zero.
I do this with images for audio formats. I have a whole bunch of them stacked one on top of another, and as the audio format changes on my receiver it displays a graphic of that audio format on the remote and all the others flip to being invisible.