It works fine on all of the pages apart from the main index linked above. On first load, and even if refreshed, it's not quite centered. However, if I browse to another sub-page, and then click the "home" icon, it centers perfectly.
A much easier way would be to take the height of the div in px, divide that by half, then do like so: (etc.)
That's indeed a technique that one can use quite often. But not always, because the height of the to center object must be known and set. That is not always the case. And sometimes there are simpler techniques. For all five -- intuitive and valid -- techniques, including a flowchart to determine which technique must or can be used, see the tutorial Vertical Centering in CSS.