In my previous life as an ED of a small non-profit, I ran into the same obstacles that it sounds like you're facing. In the end, I decided to create my own commercial product - www.donortools.com - to try to help others address many of the problems that I found with the big box software - e.g. complexity, bloat, cost, etc.
But to answer your question, I think one of the biggest problems that people face when "rolling your own" database is increasing complexity over time. It's fairly easy to get started by building a workable set of tables using a tool such as Access or DabbleDB. But I've observed that unless you have someone dedicated to the task of maintaining your database, custom databases tend to become somewhat "messy" as new reports are created, fields are added, tables are modified, etc.
The second problem/obstacle with custom databases is one of continuity. Even if you stay at your organization for ten years, chances are eventually you'll want to move on. If you're in a position of being responsible for maintaining the database, then the risk is leaving the organization in the lurch when you go. I've spoken to many organizations whose "tech person" has moved on and left them with a great custom database that they no longer know how to maintain.
These are a few of the many reasons I decided to create a SaaS database and offer it as a product - hope this helps!