Initially Ubuntu One looked perfect but it only seems to be able to sync folders in my home directory. I want a way to sync any folder of my choosing on one system with any folder on another system.
You can use a utility called unison to do this.
Unison is basically a 2-way rsync.
(note the dots on the end, these are deliberate, and are used in case the directory names aren't the same on both systems)
However it might be good idea to consult the documentation as there are a lot of important arguments to consider, like how to handle when a file has been updated on both systems since the last sync (which one should be kept).