I start with a brass ring from Burnley & Trowbridge. They're supposed to be 3/8", but they're actually just a little bit bigger. No problem - just make sure to adjust your buttonholes accordingly. Also, adding the fabric will increase the size as well.
I cut a square of fabric 1" big.
Taking a stitch on each of two sides, draw the sides in. This is three stitches, in a sort of "S" shape to draw the sides in.
Repeat on the other two sides, using the same length of thread.
Now draw in the corners, two at a time as well, and take a few stitches through the whole mass to hold it together.
Backstitch around the inner edge of the button. This is still the same length of thread, which I haven't cut.
The finished button is about 1/2". There are two ways to attach it now. The first is to use the wad of fabric at the back as a shank, and sew through that to attach the button. I think it's more secure to stitch up through the button and make an "X" of stitches in the centre of the button as if it had four holes. There's no way that button's falling off in the wash.