Good points! The thing is, I initially planned to do exactly that and hand-design puzzles, but I ran out of time. So instead, the shapes are generated randomly and the goal is not to exactly match the vertices, but to cover the area as close as possible without leaking out of the hole. Its not as satisfying perhaps, but it was the only way I could crank out a functional game.
Thanks a lot for sharing your thoughts.