but should I view the prebuilt image function as unreliable
No, the prebuilt image function SetWidth, SetHeight, SetSize, CroppedImage all should work pretty well out of the box. You would only need to extend with a custom class if you needed more control over the padding, sizing or other finer details.
http://doc.silverstripe.org/doku.php?id=image is quite a detailed page. ResizedImage(150,20) is another method you can use in the template (I Believe SetSize() is new so 2.3 may not have it)