Like in all cases like this, it depends.
The question is, does the non-profit have salaried staff?. Or are all employees working without pay? There is a difference. I worked in both roles in different non-profits.
This question is not any different to any one that asks "Do I roll my own or do I buy?" All software must be customized, and you need to weight the costs of customization against the cost of writing your own thing which can involve lots of small details.
I once wrote a small speech scheduling web-app for our toastmasters club. Yeah we could have used the standard one, but it sucked. And I wanted to learn AJAX in Ruby on Rails so it was a good fit. And the program was pretty OK (and still is). But it is small and does not really need maintenance.
I also wrote a very extensive membership management system as a salaried employee for another non-profit. In hindsight, this was a mistake. The prime reason was that the non-profit was sponsored by Lotus Notes back in the 90s and Mr Senior Manager decided to write the MMS in Notes. This was a truly bad idea. There is nothing wrong with Notes as a workflow and Office management tool, and it worked very well in our org. But as a general swiss army knife web application platform it sucks so much that it bends space-time. Fine for small apps, disaster for medium and long-term maintainability. After I left (because of corruption) it took them 7 years to recover proper operations.
At the time the choice was politically correct because we wanted to show some love to our sponsor. In that case (this was the late 90s') a RDBMS actually cost money or was at least not even remotely as mature as they are now, so no having to pay for software infrastructure was a factor. Keep that in mind if you have to run a large project. Often you need to pay for tools, and in a non-profit case this is not necessarily viable. Getting things for free severely distorts the cost part of a cost-benefit analysis and beggars can't be choosers. In a non-profit decisions about capital expenditures are often much more political than a simple cost-benefits analysis would suggest.
I can give you one piece advice though: Whatever road you take absolutely concentrate on increasing the productivity of the volunteer at all other costs. You get way more bang for your few bucks that way.
Another last thing to watch: People who run a non-profit sometimes think they are saints and therefore god will look away if they steal. Because they think they are saving the world it can get to their heads. Watch for that, it can cause you a lot of grief.