Interpolation impossible for ListPlot with Missing?

I can't think of a way to do this without indexing the data. If that's not a problem, the following will do:

    With[{
  indexed = MapIndexed[
    {Sequence @@ #2, #1} &,
    Sin[0.5 Range@100] /. {a_?Negative -> Missing[]}
    ]
  },
 ListPlot[
  SplitBy[
   indexed, 
   NumericQ@Last@# &
   ],
  Joined -> True,
  InterpolationOrder -> 2
  ]
 ]
(* Some errors spat out in trying to interpolate a series of Missing bits*)

enter image description here


tD = TemporalData[Sin[0.5 Range@100] /. {a_?Negative -> Missing[]}, {1}];

ListPlot[DeleteCases[Split[tD["Paths"][[1]], #[[2]] != #2[[2]] &], {{_, _}}], 
 Joined -> True, InterpolationOrder -> 2]

enter image description here