this has been a struggle for me too. in writing and recording I feel I do well with guitar and bass, ok with vocals and piano.
I am terrible at percussion. Where it has worked in in simple beat keeping capacities. For homemade stuff, I have found good results with nontraditional methods (mic thrown in a guitar case, watch wrapped around a mic, slapping on the desk), field recordings (construction sites, traffic, etc.) and guitar snippets (scraping, hitting, etc.) and then modding them through effects, either outboard or in the computer, including time streching.
While cool to me, it has its limits, especially when it comes to fills and variety. I am just not that creative with beats.
My other option has been much more fruitful. I belong to this site called tapeworm.org. They have other musicians from around the world that post clips, loops, field recordings. They have people who are very good with beats. So I found some clips, and then contact the artist, show him what I want and they provide other parts, specifically for the song. It is great and much better than what I have come up with myself.
Give it a try.