Several years ago I did my beater 850 volvo headliner after ordering some ebay tan headliner fabric (stretchy mousefur fabric with stretchy thin foam backing).
Fabric was good for the job, but it takes patience to avoid bunching and lumps, you have to absolutely sand off as much of the original foam and fabric that doesn't pull off from the headliner, so it is messy and time consuming, and use the very best contact adhesive (preferably commerical stuff) you can. I used the strongest 3M spray stuff I could find online, and while it worked for the most part, I still had some deep contours that came up a little in 6 months due to the Florida heat.
It isn't a fun job IMHO, and I've done a decent amount of upholstery work on speaker enclosures and trim bits in the past. I just redid my G500 one in suede, and definitely paid someone for that.
2016 AMG GT-S
2012 Caterham R400 (sold)
2010 Chrome Orange Evora (Sold
2005 ST Elise (sold)
2002 MB G500 lifted etc.
2003 Cooper S (track)
we'll see what Lotus comes up with next...