Correct. Syntax (and other) errors in chips, or the chips they use in their PARTS section will cause the load to fail.
The error caused by using nand instead of Nand isn't really a syntax error. On non-windows systems using nand will result in "Chip nand is not found...", which is the correct error.
The problem with Windows is its case-insensitive file names. When the HW simulator reads the "nand" it attempts to open "nand.hdl". Windows finds "Nand.hdl" and opens it. When the simulator loads that chip, it finds the name on the CHIP line is "Nand" which appears to be a semantic error because it doesn't exactly match the name of the file the simulator opened.
Also watch out for your HDL files ending up with the wrong case. I've seen tools like text editors change the case of existing files when you save your edits!!
If you get mysterious "Chip name doesn't match..." errors take a close look at the filename letter case.