Splitting and splicing splines

I am dealing with a condition where I have an edge with a 3D periodic curve and a 2D pcurve on a surface. The pcurve isn't periodic but it is on a periodic surface and the start and end points are the same ignoring the period delta. The pcurve is a spline. The edge has a range end which passes the period value, and is greater than LastParameter for the pcurve. One solution I am working towards is to split the spline with Geom2d_BSplineCurve::Segment or Geom2dConvert::SplitBSplineCurve or ShapeUpgrade_SplitCurve2d, then I need to shift the first part, and then splice it to the end of the second part. What is a good function to splice splines together with? Also, is my approach reasonable?