The problem is that patients are usually not in a position to determine if the care the doctor says is needed is really needed or not. This is the same as taking your out-of-warranty car to the mechanic. How do you know if the mechanic is telling the truth?
Still, this would be better than the current system. Even when you don't know if the doctor is telling the truth you can go by their reputation for telling the truth. Reputations will matter more, and doctors will care about maintaining their reputations in their community.
Reputation is pretty much worthless. Patient reviews are largely based on how nice the doctor seems (bedside manner) and have no correlation with actual clinical outcomes.
Still, this would be better than the current system. Even when you don't know if the doctor is telling the truth you can go by their reputation for telling the truth. Reputations will matter more, and doctors will care about maintaining their reputations in their community.