There's an easy answer to the incentive problem: Don't use fines as a source of revenue. Destroy the money or send it away.
That's a nice idea in a vaccuum, but who's going to destroy money that could otherwise be used on programs to help people?
You don't have to go as far as destroying it, although in terms of structuring incentives that would be ideal. Just separate the benefits from whoever is enforcing the law. This could be as simple as sending the money to the region's general fund.
It would still be a source of revenue then, just in a less direct sense. I suppose we could donate it to charity or something.