I suspect that if netflix went to the ISPs to cache their data, the ISPs would be more than happy to charge them for it like to do with other content networks. In this case, netflix is assuming that the volume of netflix traffic at the ISP will drive the ISP to request on network caching. Netflix is happy to provide this, but is not willing to pay the ISP for the privilege.
Does netflix care about how much traffic they are directly serving vs how much is hitting caching servers? Are they playing chicken with the ISPs hoping the ISPs will blink first and put caching servers servers onsite for free?