in reply to Tk mysteries.

Re: mystery #1: I think you've got the sense of -scrollregion and -width/-height confused. Try this:

my $c = $mw->Scrolled('Canvas', -width => 500, -height => 500, -background =>'blue', -scrollregion => [ 0, 0, 200, 200 ] );

And try resizing the window to something large (larger than 500x500) before pressing the '+' button.

Not only did I not answer the OP question, I supplied bogus info. Tk::Canvas is complicated!

We're building the house of the future together.