For the last 150 years there have been engineers who made careers out of how to balance recip engines. Even with modern digital analysis techniques, it is not an easy task. The problem is that you have to balance several sources of imbalance - the most significant of these is the rotating mass and the reciprocating mass. On a single cylinder engine, the rotating mass can be balanced almost completely. The reciprocating mass is more difficult. A further complication is that the connecting rod is partly rotating and partly reciprocating. The large engines that you saw at the Ford museum make no attempt to balance with crank weights. Instead, they transfer the imbalance forces to massive amounts of cast iron structure and concrete foundations to minimize the accelerations and displacements of the machine as it runs. The old text books contain pages of calculations on how to size bearings, floor bolts and other members to safely transfer the imbalance loads to the mass.
So, one solution for the model engine is to ignore balance and clamp the model to a heavy table.
Otherwise, for smaller, single cylinder engines, the massive solution is generally not available. An example is "farm" or traction engines you see at threshing demonstrations. Model engines are an even more extreme case. Balancing a model sized engine is more like balancing a small lawnmower engine or a chainsaw engine.
The technique that dataporter describes below is known as "overbalancing." The idea is to increase the mass of the crank balances to partly compensate for the rotating portion of the connecting rod as well as the reciprocating forces. Traditionally, you assume that 1/3 of the connecting rod mass is rotating and 2/3 of the rod is reciprocating.
I am accustomed to seeing an equation a little different than what Dataporter shows below.
Balance weight = (weight of rotating parts + 2/3 weight of reciprocating parts) * (Radius of crank / Radius of balance center of gravity)
For the rotating parts you include the crank pin, the crank cheeks on the pin side of the shaft, and 1/3 of the connecting rod weight. (1/3 is not magic, it is based on experience)
For the reciprocating parts you include 2/3 of the connecting rod, and all of the cross head, piston rod and piston.
In traditional design you place 1/2 of the balance weight opposite of each crank cheek. (since you are using a double sided crank)
Since you are doing a "design - build" you don't know all of the weights yet, but you can take a guess at them. I would recommend leaving provisions to add balance weights to the crank after the design is completed. Drill & tap holes in the balance sides of the cheeks so that you can optimize the balance after the design is completed. Leave enough room in the crank case design to handle the diameter and thickness of the balance weights. To get a relative idea, look at the balance weights on the crank of a small gasoline engine. Then consider that the steam engine has addition recip weight in the form of the piston rod and the crosshead.
There is another source of unbalance - the valve mechanism. I am guessing that you will use an eccentric type of valve action. The eccentric, along with the connecting rod, also generates some imbalance. The traditional solution is to not attempt to balance the eccentric, but to keep the radius of the eccentric as small as the valve design will allow, and then to minimize the weight of the eccentric and the "strap." The valve loads are much smaller than the piston loads, so a lighter connecting rod can be used, and it can be made of aluminum to reduce the weight. (Another note: when you get to the valve design, consider a "piston" style valve over a sliding valve. The piston valve might be easier to make, and it takes less force to run it than the sliding plate type of valve.)
A further source of balancing happens with the valve timing. The steam valve always opens a few degrees before top center to assist in decelerating the piston and other recip mass. Likewise, the exhaust valve closes a few degrees before bottom center to generate "compression" and help to decelerate the piston and recip mass. The final compression on the exhaust stroke also slightly increases the efficiency of the engine because of thermodynamic reasons.
You are right in observing that low speeds make for less unbalance forces. The forces due to unbalance go up with the square of RPM. If the first engine dances around too much, consider it a learning experience when you start the second.
Sorry for the rambling post.
Looks like you have a fun and interesting project.
Terry S