I think one of the best things about Davis Cup is that it allows there to be top level tennis in countries that might not normally have a big tournament of their own. The long travel times required of some legs does make it less attractive for players who would much rather focus on their next tournament, but I think the benefits of having the event in all of the different countries is worth the risk that top players might skip it.
I wouldn't see it as a problem to host the event over two days instead of three. In fact, I'd see it as making the event easier to market. If the hosts want to pad it out, they can open up practice sessions to members of the public.
If the issue is getting top players to play, they need to work on adjusting the timing, so players don't turn up tired to the DC tie, or turn up to their next tournament tired.