Dialog windows should be set transient for the main application window they were spawned from. This allows window managers to e.g. keep the dialog on top of the main window, or center the dialog over the main window. Gtk::Dialog::new_with_buttons() and other convenience functions in GTK+ will sometimes call set_transient_for() on your behalf.
On Windows, this function will and put the child window on top of the parent, much as the window manager would have done on X.