Issue with Piecewise Parametric Plotting

I am trying to make a parametric plot of a piecewise function that is defined locally. For some odd reason, Mathematica will only plot the first two pieces of the piecewise function. If I plug in numerical vaues to either $ \gamma$ or $ t$ as defined in the program below then a numerical value is returned for totalXFunc and totalYFunc. What gives here?

g = .511; v[\[Gamma]_] := 3*^8 Sqrt[1 - 1/\[Gamma]^2]; B = 1.4; e = 1.602*^-19; m = 9.31*^-31; \[Omega][\[Gamma]_] := B*e/(\[Gamma]*m); r[\[Gamma]_] := 34*\[Gamma]*g/14000.; regionTwoWidth = 5*^-2;  f1x[t_, \[Gamma]_] := v[\[Gamma]]*t; f1y[t_] := 0;  regionOneBoundary = 38*^-3;  boundaryOneTime[\[Gamma]_] :=    NSolve[regionOneBoundary == f1x[t0, \[Gamma]], t0]; t1[\[Gamma]_] := Re[t0 /. boundaryOneTime[\[Gamma]][[1]]];  f2x[t_, \[Gamma]_] :=    regionOneBoundary +     r[\[Gamma]]*Sin[\[Omega][\[Gamma]] (t - t1[\[Gamma]])]; f2y[t_, \[Gamma]_] :=    r[\[Gamma]]*Cos[\[Omega][\[Gamma]] (t - t1[\[Gamma]])] - r[\[Gamma]];  regionTwoBoundary = regionOneBoundary + regionTwoWidth;  boundaryTwoTime[\[Gamma]_] :=    NSolve[regionTwoBoundary == f2x[t0, \[Gamma]], t0]; t2[\[Gamma]_] := Re[t0 /. boundaryTwoTime[\[Gamma]][[1]]];  v3x[\[Gamma]_] := D[f2x[t, \[Gamma]], t] /. {t -> t2[\[Gamma]]}; v3y[\[Gamma]_] := D[f2y[t, \[Gamma]], t] /. {t -> t2[\[Gamma]]};  f3x[t_, \[Gamma]_] :=    regionTwoBoundary + v3x[\[Gamma]]*(t - t2[\[Gamma]]); f3y[t_, \[Gamma]_] :=    f2y[t2[\[Gamma]], \[Gamma]] + v3y[\[Gamma]]*(t - t2[\[Gamma]]);  boundaryThreeTime[\[Gamma]_] := t2[\[Gamma]] + 1.*^-10;  totalXFunc[t_, \[Gamma]_] :=    Piecewise[{{f1x[t, \[Gamma]],       0 < t < t1[\[Gamma]]}, {f2x[t, \[Gamma]],       t1[\[Gamma]] < t <= t2[\[Gamma]]}, {f3x[t, \[Gamma]],       t2[\[Gamma]] < t < \[Infinity]}}]; totalYFunc[t_, \[Gamma]_] :=    Piecewise[{{f1y[t], 0 < t < t1[\[Gamma]]}, {f2y[t, \[Gamma]],       t1[\[Gamma]] < t <= t2[\[Gamma]]}, {f3y[t, \[Gamma]],       t2[\[Gamma]] < t < \[Infinity]}}]; 

Then I call the ParametricPlot function with

ParametricPlot[{totalXFunc[t, (22.)/g], totalYFunc[t, (22.)/g]}, {t,    0, boundaryThreeTime[22/g]}, PlotRange -> {{0, .1}, {0, -.07}}]