It's probably just the level of formality. "However" is more formal than "but." しかし is apparently more formal than でも. Therefore, it seems to be a better match for "however."
However, I've never heard しかし before and don't know how common it might be.