One possible reason
Some switches are 'auto MDX' (auto crossover) and some are not. If you accidentally made a crossover cable, it will work on a switch with auto MDX feature.
Also, some switches are pickier about precisely what voltage and cable characteristics they will accept. Some Ethernet switches also do POE (power over Ethernet) but I don't think that is the issue in this case.
If you make your own patch cables, TrendNET makes a nice tester for under $50