The "decorations" in title bars are typically the responsibility of the window manager (which you may or may not have much control over-- especially with Tk). Reading the perldoc for Tk::Wm we find a $toplevel->wrapper() method which will give some info about the window holding this Toplevel widget. We also find that there is a Tk::Mwm module for manipulating the Motif window manager, which does have methods for controlling decorations, but may or may not suffice when running other wms, like KDE or Sawfish or Windows (some of these may have their own modules).

What you can do to avoid the user sidestepping your dialog box by clicking the close button is arrange a variable to be set by the button you want the user to use. If that variable is not set correctly when the dialog closes, simply re-open the dialog (with an optional stern warning to use the button this time). This will prevent those of us using window managers that support various destroy methods from getting around the lack of a close button as well.