in reply to TextUndo in an already established text widget?

Tk::TextUndo isa Tk::Text .

You should be creating the widget with:

my $t = $mw->Scrolled("TextUndo"...