In the new AppCompat library, we can tint the button this way:
The way I managed to get mine to work was by using CompoundButtonCompat.setButtonTintList(button, colour).
CompoundButtonCompat.setButtonTintList(button, colour)
To my understanding this works regardless of android version.