A button that has a colored background or border in the disabled state must get a gray background. Otherwise it will be visually seen as not disabled.
Same with outline and ghost buttons. Color is too powerful a tool and even with reduced transparency a colored button with disabled state doesn't look off.
You don't need to complicate styles and make different tones for each disabled state on different backgrounds. A single style for all types of buttons with reduced transparency is enough. That way they'll look natural on any background.
You don't need to change the color to a brighter shade for the hover state. The button should not change its appearance significantly, because the hover state is just an indication of an intermediate state and it doesn't need much emphasis.
It is better to make the color of the button a little darker and this will already be enough to indicate the hover state.
With dark and black buttons you have to do the opposite. The color should be a little lighter on the hover state.