I've found that asking nicely without being intrusive gets better results. At PortableApps.com, if you block ads, I have it set to show a single unobtrusive message using the same fonts, colors, and backgrounds as the rest of the site in the area where the first ad would appear. The message says "Please Help Support Us: Please consider white-listing us or making a donation so we can keep bringing you awesome apps. If you recently donated, thank you!" It's designed so that when it appears after detecting that the ad isn't shown, it doesn't make the page jump size/layout wise. In the text, 'white-listing us' links to instructions to whitelist the site and 'making a donation' links to our donations page. The detection script even cleans up the bits of background from hiding the other ads so the page still looks clean.
It helps that I have the site setup to only show a single ad above the fold for the majority of users and don't allow popovers, popunders, overlays, sound, etc.
Eventually, I'd like to add an option to display a message for donation accounts or something similar, but recurring payments and Drupal don't really play well anymore. The only supported add-on in existence is now Recurly. They're pricing was $1,200 a year but they switched it to "Ask for a Quote" (aka expensive but we don't want to say), so it's not something we'd be able to afford for the number of users.