If it works when you ground the wire directly to a metal part, that means the switch inside the airbag is faulty. The switch is actually this membrane that is built into the front cover of the airbag. You can not buy the membrane so you have to replace the airbag. Another option is to drill two holes near the edge of the air bag's plastic housing and install switches. You can use these switches to operate the horn. If you decide to buy a replacement airbag, I suggest you buy a used one taken from an accord because there are faulty aftermarket bags out there that will blow up in your face. A used airbag is around sixty bucks on ebay but just make sure you buy the same brand. What I mean is, if it says hitachi, get a hitachi, if it says matusi, get a matusi, if it says elephanttoenail, get an elephanttoenail. To take off the airbag just put a t30 torx driver in the hole under the removable plastic tabs on either side of the steering wheel. The bag just pulls right out. Make sure that battery has been unplugged for 30min before you do that though or your srs light will come on or the bag could, although unlikely, blow up in your face. After you replace it, plug the battery back in and it should work fine.
By the way, I didn't want to spend money on my broken horn so I drilled holes and installed switches. If you tell me how to upload pictures directly, I can post the pictures from start to finish.