The, "National Do Not Call List", only applies for companies in your country and does not apply to fake output caller iD numbers calling in from an international source. If they call on your mobile phone, most mobile phones have a call block feature. If they call on a land line - most land carriers have either a monthly service option to block these types of numbers.
Or you can try one of the hardware versions of these devices. I've found them on Amazon for as low as $30 US which only blocks 200 numbers to as high as $199 US which blocks as many as 1500 numbers (there are models at the $99 which also claim 1500 capacity).
To make them work you must allow the call to ring, and after deciding if you want the number blocked, usually there is a single button or function to press on the device to instantly add the caller to the internal device memory (200-1500).
This is the unit I am saving up to get: https://goo.gl/TIfgoa
I'm just waiting for the company to reply back with more info so I'll know if I can get it to work in Canada.
These Indians [***] faces are keep calling me asking about Rogers or Bell. They are complete scammers tryin to give you a discount on your bill. [***] cheap [***]!