I have a 1989 Bayliner and the top deck table is not square, as well there is usually a slight breeze and the table cloth either ends up in the water or the table weights end up on the floor. I am not crafty nor a seamstress but really, how hard could this be?
Instead of regular fabric I used a Martha Stewart Shower Curtain for this project as they are, relatively, water repellant, they do not stain easily, they come complete with weights on the bottom hem and the shade of blue was perfect.
I used a piece of newspaper to trace the shape of the table and then I added a seam allowance of ¼” (6.35 mm) and cut out the piece for the top of the table. I then cut the bottom off the shower curtain with the weights and finished hem (bonus, you don’t have to hem) so the piece was 4” (10cm) wide with the weights running along the bottom of the strip for the sides or skirt of the table. You can make this strip longer if you like, I kept it short so people wouldn’t pull the table cloth when they sat down. I then attached the table top piece to the table skirt piece, right sides together and stitched it all the way around. I closed up the seam on the end and then finished it off with a zig-zag stitch to stop the fabric from fraying in the wash.