Hi Remco,
You are partially right about the Link element being cosmetic. It is in most situations, except when you have "Copy to output directory" set to something other than "Do not copy". In that case, when you build, it will create a copy of the file in the output directory at the relative path specified under the Link element. It will use the Include attribute of the content element as the source path so that there does not need to be a copy of the file at the link path under the project directory.
The important thing about the Link element is that its presence means that the path in the Include attribute is not within the project's directory structure - it could even be an absolute path to some completely unrelated location (although that probably wouldn't be very good practice). I suspect that this means that NCrunch isn't doing the right thing if it is copying to the Include location rather than the Link, if Link is present.
I've been trying to find some actual documentation on how it works, and I found this, which isn't entirely helpful:
http://msdn.microsoft.com/en-us/library/vstudio/bb629388.aspx. It does appear to have a copy and paste error on the Content/Link element description though, because it looks like a copy of the Visible element description. The Link elements on the other items are described properly.
I should probably add that these bits in the .csproj file were generated by Visual Studio, using Add -> Existing Item... and then click "Add as link" on the Add button drop down. I haven't edited it manually.
Thanks,
Richard