To make these, you need a white flat marble (found in craft stores), a black permanent felt tip marker, 2 tiny googly eyes, a 2 inch square of white cloth, glue (I use E6000), and a pin for the back.
I pulled a few strands of thread from the edges of the cloth to fringe it a bit. Fold it over from corner to corner to form a triangle. Add a small dot of glue between the inside of the triangle to hold it together.
To make the face, I use an emery board to scuff up the spot where the mouth and eyes will be so the ink and the glue will stick better. I just drew a round or oval shape for the mouth and glued on tiny googly eyes. You could just as well use the ink marker to make the eyes. Let the ink and glue dry. If you have a problem with the ink not sticking, you can spray a light coat of Krylon Fixative on to seal the ink.
Next, glue the head onto the cloth body and glue the pin to the back. That's it.
Instead of making the cloth triangle body, you can cut the body from white felt or white fun foam. Just cut it into a ghostly shape, as I did in the second picture below.
If you wanted to gift these, you could package them in a small zip bag and staple a topper such as the one I made below.