Since you have a top arc and a bottom arc, you can use them to create a copy that interpolates the positions of the control points so that the new arc appears between them. In other words: the control points' position is mixed between the top position and the bottom position. The factor thus determines the height of the new arc. It's similar to a shape key.
The Mix node (1) mixes the positions of the two arcs (2) and (3). You can define them and the Factor in the modifier's setting (4). The labels of the Group Input node can be changed in the side panel of the Geometry Nodes editor (press key N with the mouse in the editor to open it).
The Set Position node (5) adjusts the position of the control points with an offset along the Normals (7) so that the rails are in front or behind the slats.
With Curve to Mesh (6) you can give the new arc some geometry. Of course, you also could instance other objects on its points, similar to the Array and Curve modifiers that you use.
The material (8) must be set by a Set Material node. If you drag it to a Group Input node you can define the material in the GN modifier settings (4).
For some reason I don't know, the Top Arc curve is considered a mesh and not a curve. It's a curve in the outliner, but it can be converted implicitly to a mesh when it has shape keys, or in the Properties > Geometry section the Bevel/Extrude settings are used. That's not the case here, but Blender still complains that the Top Arc is a mesh, while the Bottom Arc is a real curve. (If there is an error you will see a little (!) in the top right corner of the node. Hover it to see the error message.). That's why we use the Mesh To Curve node (9) to ensure that the curve is really a curve and has not been implicitly converted to a mesh for some reason.