I would be inclined to get a half dozen tree sprites and stick them together in a semirandom fashion, breaking it up anywhere I see monotony. This uses up a bunch of spirtes, but unless you are taking up an inordinate amount of memory, or spending lots of CPU time on your slowest target platform checking for collisions, it doesn't matter.
One alternative is a 9Patch. You can tile the inside, so trees overlap in an organic way, but the outside can be nonoverlapping with correct transparency. One of the difficulties there is that you can't rotate it without rotating the entire layer, but that isn't always a huge problem.