A lathe is the best way. I've never been anywhere in the world I couldn't find a proper machine shop. The goal is to have 4 cylinders producing the same power and an engine making rated power.
In the field, w/o proper tools, you can measure with a feeler gauge and a proper straight edge. I have a bench drill press and mount the piston in a 2 way vice. With a homemade tool I get the piston top square, 90° to the spindle. Again using feeler gauges and the depth
control I crank the piston across the cutting jig, making several passes to slowly reach the finished height. It takes several hours to do 4 pistons. Cutting tooling and or a grinding attachment can be purchased at a machine supply or maybe Harbor Freight. Probably on Ebay, too. Grinding leaves a better surface, but it's hard to mount on a drill press. If you could mount a grinder so the stone is down, you could use the 2 way vice and so the same thing if everything was solid.
It's a lot of trouble, so after marking the pistons, find a machine shop and have them do it. It's easy on a lathe.
My father was a chief engineer
. He taught me many things. He could finish poured lead bearings with a file taking .0005 off every stroke. I suppose you could file, but keeping square and having 4 the same would be hard. I use to cast and machine my own pistons, but not Perkins
. I can make pistons that don't require secondary fitting. I don't know why Perkins can't make standard blocks and pistons.