Oh, it could be. Ensuring they don't call existing customers means running their calling lists against a database of existing customers. THey may well not be prepared to release that list to call centres. Also, data change, people move house, phone numbers change, so that means that the match between numbers and existing customers changes, and it's expensive to keep running that comparison and exclusion.
There's any number of reasons why a company can call existing customers to try to switch. You can't even go by address, since addresses often have multiple indepentant occupancy. Ultimately, it's often cheaper to just call and get told it's an existing customer, than it is to try to keep calling databases up to date.