The cushions ended up being a little more of a challenge than planned. There is also a hard-earned lesson here.
I had hoped to re-install the same buttons, but it turns out that the staining on the 32 top-side buttons was rust coming from the metal core of the buttons. They were ruined. Furthermore, I think some of the staining on the cushions was this rust rubbing off onto the other fabric.
So I made new fabric covered buttons. In this picture you see the worst button next to a new one:
I used cover button kits similar to the one in this picture - instructions are on the package.
Here's a good video on how to sew the tufting buttons on to a cushion:
...and a photo of the tools I needed for the job:
Here's a completed cushion, finished with two coats of Scotch Guard:
Why did the buttons rust?
I think it happened after steam cleaning the upholstery. The upholstery did not dry fast enough. A motorhome is a small enclosed space with less opportunity for humidity to dissipate. I must have failed to allow adequate ventilation, and then prolonged dampness caused the buttons to rust from the inside out. Unfortunately there are some more rusted buttons on the captain's chairs, but now I have the fabric, tools and skills to repair the rest.
After steam-cleaning tufted upholstery, provide lots of ventilation, perhaps a circulating fan and possibly even some heat. In future, I might even consider using a blow dryer on the buttons to eliminate any chance of rust.