There was an interesting article that I read in the Specialty Fabrics Review magazine.  It was on what might be causing discoloration of your vinyl cushions.  It could be the result of a bacteria called streptoverticillium reticulum.  Apparently the chemical (arsenic) that has been used to keep the bactieria from developing has been banned.  The manufacturers had to switch to another product which they weren't making strong enough.  As a result the bacteria wasn't stopped from developing.  They call it "pinking", but can be purple, brown, blue, orange or yellow.  The bacteria apparently likes dark, hot, humid conditions like inside a boat cushion under a cover.  Leaving the cushions in the sun might help.  The article brought out that some people thought that the cover over the cushions was bleeding over into their vinyl.  Apparently there is a system that seems to eliminate the problem.  It's called Gestalt's Pink Away.  For more information go to gestaltscientific.com.  Just a thought, like bottom paint or waterproofing, the chemical may be leaching out of the vinyl if you have an older boat that appears to have this problem