The 'Special Features' section of the XStow home page is out of date; for example GNU Stow now supports multiple stow directories, and supports regular expressions in some contexts. The 2.x release was almost a complete rewrite, with major refactoring, an improved two-phase approach, and a comprehensive test suite. Since then I added and changed many things including support for ignore lists, file adoption, optional disabling of folding (AFAICS XStow doesn't support folding at all, which wouldn't be too surprising because that's by far the trickiest thing to get right).
In my undoubtedly biased opinion, the original motivation for writing XStow was questionable, or at least driven by reasons which are now obsolete. The home page says "Stow requires Perl. But what's on systems where no Perl is available, or not yet installed? I tried compiling Stow with perlcc, but it failed", but in reality how many systems are there out there which support symlinks and don't have Perl preinstalled? Perl is ubiquitous. C++ strikes me as an absolutely terrible language choice for this kind of utility where performance is far less important than code maintainability.
That said, XStow does have seem to have a few nice tricks, and I intend to steal at least one of them for GNU Stow by adding install hooks to handle the Info dir
merging use case, at least. Also the code is maintained in a git repository and I'll gladly accept pull requests against the github project.
I'm also planning to release a new version of GNU Stow at some point this year, but so far not much changed in git since the last release (2.2.0). My top priorities are currently to facilitate selective folding and install hooks.