Learn more about manifests, so I know what a good one looks like.
Take a look at the one we’re generating for Kiln; see if anything obvious screams out.
If so, dive into the build system [blech] and have it fix up the manifest, or generate a better one, or whatever’s involved here. This part’s a second black box to me, since the Kiln Storage Service is just a py2exe executable, meaning that we might be hitting a bug in py2exe, not our build system.
If not, burn a Microsoft support ticket so I can learn how to get some more debugging info out of the error message.
Here’s the first thing I actually did:
Look at the executable using a dependency checker to see what DLLs it was using, then make sure they were present on Windows 2003.
I think it's a rather similar problem and a similar issue, except that what the OP sees as "the right way", I see as over engineering the solution. OrphanWilde has the better method for real life.
http://bitquabit.com/post/cargo-cult-debugging/