I have a few (comparatively minor) complaints about GnuCash, but they're around UI. Things like: it would be nice to assign all matching (eg Regen) transactions to a selected account, and stuff like that.
But overall, having something that is A) simple and B) I control fully, beats everything else.
The principles of free software show, I guess.