A little bit late, but I think I have a answer for you.
I never come into the "LeftRelease" Event and it keeps scrolling the button after releasing
It's because the script is running on the slider-button itself. If you release the mouse beside the slider the event won't work.
You have to code the release also in the window script or in my opinion in the game.script
the button doesn't stay under the mouse cursor
Try something like this
this.X = Game.MouseX[b]-8[/b];
(-8 in this case) it makes the offset.
Another method would be using sprites and make the hot spot on the right point.