I tried everything to make it work but the hardware simulator keeps throwing a comparison error at my face, I do notice that my HDL code fails the comparison but I have no idea why! I even found codes written by other people and pasted that instead but still the same stupid error again!
Your HDL is correct and passes the test on my system. The error is most likely in your Mux16.hdl. (Also make sure that the test is loading the Mux4Way16 that you want it to. Verify that you can see your HDL in the simulator's HDL panel.)
You can diagnose this by creating a new directory and putting only Mux4W16.hdl, .tst and .cmp files in it. This will force the simulator to use the built-in parts. Then copy Mux16.hdl into this directory and retest. If that works, copy the chips that mux16 uses into this directory, etc.
Please edit your post to remove the working Mux4Way16 code.