This answer may not count if you require a strictly programmatic solution, but I found it interesting so I thought I'd share. :)
The math way would be to break the shape into a collection of triangles and do a weighted average of their individual centers of gravity. I don't think any of the popular drawing programs will automate that for you. It can be done manually but it may not be worth your time.
This site has a breakdown of a physical approach that may be a faster yield on your time: http://www.scn.org/~bh162/center_of_mass.pdf
The basic premise is that objects with uniform thickness can be determined using 2-3 plumb lines from random points at or near the edges of your shape.
- Print & cut out a copy of your shape.
- Select 3 points somewhat close to different edges on your object.
- Use a pin or nail to poke holes in your 3 points. The holes should end up slightly larger than the diameter of the implement so that the cutout can swing freely.
- Hang your object using the pin through one of the holes.
- While your object is hanging, use a string and weight to make a plumb line and trace the line.
- Repeat the hang & plumb line for the other holes.
- The point where all your lines intersect is the center of gravity for your shape.
- If your lines are precise, you should be able to determine an accurate center with 2 lines and the 3rd line is just for additional verification.