I had the same problem. Last cruise I just printed them on card stock, laminated them and then I cut up business card-sized magnets and stuck them to the back (I got blank ones with a sticky side from Staples).
This cruise I am going to print them on sticker paper (also from Staples, with the other specialty printer papers) and then stick the sticker part onto the magnetic sheets, and then cut them to size. The downside of using the magnetic sheets is that they are heavier than just a few well-placed magnets, but I found that the ones I used for the last cruise bowed a little where the magnet didn't attach. I did find the laminating to be helpful (you can get self-adhesive laminating sheets at Staples too, no laminating machine or heat required). Also, be sure to put your name/stateroom on each magnet (even just on the back)--while none of ours went missing last year, we did have a couple that got moved a few doors and were then returned because of the room number.
Hope that helps! Can't wait to see everyone's doors/FEs
Maureen