The default MSBUILD xml produced by Visual Studio 2010 is missing
<Private>True</Private> for the reference.
To fix this simply set the reference Copy Local to False, save the file, then set Copy Local to true.
The correct MSBUILD xml is now produced in the project file.
Stack Overflow - reference dll not copying to bin with deployment project causing error