The square piston seal is twisted as you brake. When you release the lever, the elasticity of the twisted seal will force back the piston. An old stiff seal does not work very well. Of course, everything else has to be clean and no major rustpits on the side of the piston. Before installing the piston, simply give the piston sides a layer of brake fluid.
+1 on Kevins comment on the tiny hole in the master cylinder, a hair from a clean steelbrush works fine, too.
Steel houses is not a must, but old eubber becomes soft and absorbes some of the brake force. A new pair of rubber houses works fine.
Good luck.