I hate to answer my own question, but hey, nobody else did! Me and my colleagues took another look at the problem again this morning. The solution ...
stackoverflow.com