Andy Finnell has written a series of articles (and provides code as well) on how to implement boolean operations on bezier paths. You can read the posts here: Boolean Operations on Bezier Paths, Part 1, Part 2, and Part 3.

I've been wanting to add boolean operations to Acorn for a long time now, and this will make it really easy to do now. (And Acorn already includes bits of code from Andy already! (The smudge tool)). I love Andy (but not in that way!)).