EDIT 5-21-2012: After temps hit 90 degrees or so, the headliner fell. Probably a combination of heavy material, and inadequate adhesive. The below procedure may still be valid with a different adhesive, or a lighter material.
I went to the fabric store and picked out a yard of light gray vinyl, pretty close to the gray interior color. Around $16 for the material. I used the original headliner fabric as a pattern to mark and cut the vinyl, leaving a little extra on all sides:
Test fitting:
All trimmed up to fit without wrinkles:
Masked off edges to prevent adhesive overspray:
continued...