Working with NI we've determined that the problem is that I'm compiling with Microsoft's Visual C++ 2005 Express.
THe instal works on any computer that has ever had LabVIEW 6.1 installed on it, and works on any computer that has ever had VC++ 2005 installed on it, but causes errors on any computer that has not had either installed.
It seems that VC++2005 creates a dependency on a Windows dll called MSVCR80.DLL, and even if you include it in the additional files in the NI installer, there's still some other stuff you have to do to allow the DLL you created to find it when it tries to run.
So I swtiched to Borland Turbo C++ express, and after a little sweating figured out the if I put "Extern C" in front of my "__declspec(dllexport)" I didn't have to figure out how Borland handles function name decoration, and now everything's working.