Yep - there is no need to have a server default 410 page, you can just easily retain the content on the page, whilst still telling search engines and bots that the page has expired.
We are going to go down the route of doing this on a page for page basis (not through htaccess) and automatically display a message on these pages for a weeks to let people know (who may still accidently come to it from SE's who haven't unindexed or old direct links in emails etc) that the page has expired and a search option to take them to new content. Eventually we will remove the content completely (3 / 4 weeks later).
It's hard to be specific about our situation without just saying our domain, but the content we are 410'ing is generated by clients, who want it removed after a certain date anyway. That's one of the main reasons why I don't want to leave it as a 200.. 410'ing and then potentially removing after a few weeks is the best trade-off.