Once you have the male snaps located and installed on the deck where you need them, and the carpet cut and bound to fit the area you want covered, the hard part is getting the female button snaps properly located in the carpet.
Best idea I've seen is to drill a very small hole in the center of one of the female button snaps. The hole needs to be small in order to push a 3/8" or 1/2" tack thru the hole so it stands proud (like one of those WWI Prussian Helmets), and a little solder to keep it in place.
Put this modified snap on any male snap installed in the deck, position the carpet where you want it and push the carpet down over the tack, mark the spot, pull up the carpet, install the female snap, remove the the modified snap and snap your first new snap in place.
Keeping the carpet in the desired postion, continue this proccess until you're done. You should NOT do this in sequence around the perimeter, but in a side-to-side, fore-and-aft pattern to ensure a snug fit.
Pretty snappy, eh? [:-eyebrows]
If you are adverse to drilling all the required holes in your deck for the male snaps and sealing them properly to prevent water intrusion in the fiberglass laminate, then velcro is probably a better choice.