And to add: fonts have not the same extents on every system (even if it's the same font family), and internationalization may hit (label texts occupy more space in some languages).
Issues which I often have to face from badly written Java, Gtk or Qt GUI applications.