I have never had problems with -textvariable in Labels using nested data structures despite using them frequently, this case is the first, so I think ProgressBar is somehow messing with it (you can see that ProgressBar actually resets the value of $pid{ex1}{val} to the '-from' value despite this not being a documented behaviour).
If you try removing the ProgressBar the behaviour of the -textvariable in the Label will be consistently as expected.