After testing a number of options it seems that PHP 5.1.4 does not fully support custom php.ini files. Don't know whether this is a bug or a change in the direction of PHP, but I truly needed per-directory php.ini support. Downgrading PHP to 5.0.5 fixed this problem and all is well. I haven't tested per-home-directory but I would imagine this works as well. Of course a custom wrapper is probably the best way to go for flexibility on shared hosting, but downgrading is a good temporary fix should you not need the latest PHP.