If you feel like doing a lot of pencil-and-paper, tape-measure, and computer work, you can divide your boat's volume up into a large number of approximately uniformly dense subvolumes, each with easily computed centers (and therefore centers of volume). Then you just take the weighted sum of the cartesian coordinates of the centers (weighted according to mass).
To some extent you can simplify the problem by taking advantage of the symmetries of the boat. If you assume the boat is laterally symmetric, then the CoG is on the central vertical plane, and the problem becomes two-dimensional. You just need to draw up an accurate cross-section of your boat and then do a process similar to the above. Manufacturers' cross sections seem fairly easy to come by, and will be good approximations to a boat with empty tanks and well-trimmed solid ballast.
Would probably be an interesting exercise for any boater... would also be interesting to write a computer program that analyzes an image of the cross section, asks the user for some information about materials, and computes the CoG! Okay I'll get right on that.