I’m not saying it is this, but 9 times out of 10 with the horn and the starter it’s the button. It’s either got enough corrosion that just spraying something in there isn’t going to help or also check for only a few strands of wire still soldered to the back of the contact points for the spring and button. Your best bet is to take the controls apart enough where you can see everything and make sure everything is really clean and lubricated. Simple enough to check first, if you take the headlight off, get in the bucket and substitute the wires going to the starter button with two wires plugged into the harness completing the same circuit that at the button would. Touch the two wires together to mimic The push button. If that’s working well, then it’s definitely in the switch. You could also do the opposite and use the wires coming from the starter button to feed a 12 V test light or horn, etc. and see if the button activates those.