Sweep
Draw a path, i.e. a rectangle, draw in the ucs that is perpendicular to the ucs where in you drew the rectangle, a profile of the cushion that stops in the middle of the cushion (meaning a half-section of the cushion). Activate Sweep, select the path and the profile and there you have it.
If you use a closed polyline for the profile, you get a solid; if the profile is open you get a mesh.
Approximately 1 min 30 sec, depending of the complexity of the path and the profile.