A better way to do it that saves you the trouble of having to re-enter all of your cloth settings and loosing all of your bakes is to use the "create duplicate for editing" option on the dropdown menu to the right of the object's list of shape keys. (The black downward arrow below the plus and minus buttons)
This creates a freeze frame duplicate of the object exactly as it looks on screen. Now you select both the duplicate mesh and your original (you want to do it in that order so the original is your active mesh) and use the "join as shapes" option in the same dropdown menu as before. Ta-da: new shape key.
You're free to delete the duplicate at this point, or you can keep tweaking the duplicate and adding new shape keys to the original.
Make sure you have any subdivide, solidify, decimate, or remesh options turned off when you make the duplicate, or the vertex count won't match and you won't be able to apply the shape. If you want to make any tweaks to the duplicate you can do so. Sculpt, edit, apply modifiers, turn it inside out...as long as you don't add or subtract any vertices you can do whatever you want to the duplicate and it will still apply back perfectly with no fuss. Deleting one vertex and adding another for the same total will still mess this up because it changes the number tags on the vertices, but subdivide/multires is okay as long as you turn them back off at the end.
This same trick works for any deformer, not just cloth. Its also extremely useful for making corrective shape keys, making shape keys out of entire stacks of modifers in two steps, and giving yourself some idiot proofing while reducing lag by letting you sculpt on a clean duplicate rather than your precious master copy with thirty shape keys floating in your cache.