If the goal is to get the electoral college to better reflect the popular vote, the simple solution is to avoid the winner-take-all system and apportion votes by congressional district based on the popular vote in the state. So why don't the states who signed the interstate compact do exactly that? It does not require any other states to go along with it and can have an immediate effect.
Since the National Popular Vote Interstate Compact only takes effect once it covers enough electoral college votes to decide the presidential election, and the compact dictates that the signers allocate all their votes to whoever wins the national popular vote, the result of the electoral college vote will be brought into line with the national popular vote once it takes effect (regardless of what non-signing states do).
If the signers instead immediately started dividing their electoral college votes to proportionally match the popular vote of those in the area, the immediate effect would be diluting the power of their votes. Without all states signing it, the compact could not force the electoral college vote to match the national popular vote, and those states not signing would effectively become stronger "swing states" - a few votes in a non-signing winner-takes-all state could change the outcome of the electoral college vote, while a few votes in a signing proportional-allocation state would change significantly fewer electoral college votes.
Because you can use gerrymandering to make it so that the popular vote in a state doesn't win the majority of the congressional districts in that state. This of course is not counting for the two votes that each state gets for its Senators.
In the end the only way to ensure the popular vote winner gets the votes is to award it solely based on the popular vote alone.
The issue would be that unless every state agreed, those that changed their method of apportionment would likely have less influence overall. Take California, for example, with its 55 electoral votes. Today, that is a very blue state so the Democrats can basically count on getting all 55 electoral votes every election. If California decided to apportion electors by district (I'll assume the 2 extra go to the overall state winner), and assuming the election went the same way as the last House election, Republicans would take 7 or 8 of those 53 districts (a previously Republican seat is vacant) so you'd end up with 47 or 48 electoral votes for the Democratic candidate and 7 or 8 for the Republican candidate. Effectively, that reduces the impact of winning California from a net of 55 to a net of ~40 electoral votes.
If California allocated its votes proportionately to the statewide popular vote, eliminating the impact of district gerrymandering, then based on the 2016 results, it would have given ~1/3 of the votes to the Republican and ~2/3 to the Democrat. Lets say that works out to 37 votes for the Democrat and 18 for the Republican (depending on the rules, the Libertarian and Green parties might have won an elector as well). Now the winner of the state only nets 19 more electoral votes than the loser.
Abolishing the Electoral College is something that has more support among Democrats than Republicans. If the solidly Democratic states decided to change how they apportioned electors while the Republican states stayed as winner-take-all, it would become extremely difficult for a Democratic candidate to win the White House. You would need the solidly Republican states to reciprocate before elections where some states had adopted the change and others had not were fair.
Incidentally, this is one of the reasons that the National Popular Vote Interstate Compact doesn't take effect until it is ratified by states representing at least 270 electors. Solidly Democratic states don't want to put their candidate in a position where he or she has to win the national popular vote to get all the Democratic states plus win additional winner-take-all states in order to win the election.