Correct you cant add the UIlocalise script to a "button" it needs to be attached to a widget (UILabel, UISprite, UITexture) due to the line at the top "[RequireComponent(typeof(UIWidget))]". I also cant remember/ find a script that will change the buttons sprite depending on the state.
So that being said youd have to write your own script which would listen for the OnHover, OnPress, and OnLocalize. using those methods you should be able to change the sprite based on both language and state.