Can be done with BSplineCurve[], which accepts SplineDegree as option
In[2]:= data = RandomReal[{-2, 5}, {150, 2}];
In[14]:= Graphics[{BSplineCurve[data, SplineDegree -> 4], Green, Line[data], Red, Point[data]}]
as higher the spline degree is, the more the curve concentrates away from outlier points. Despite the manual you cannot give SplineDegree with a value other than Automatic to BezierFunction[]
In[15]:= f4 = BezierFunction[data, SplineDegree -> 4]
BezierFunction::invdeg: Value of option SplineDegree -> 4 should be a positive integer, or a list of positive integers. >>
I tended to consider 4 as a positive integer ... compare the manual (Mathematica 10.0.0 Windows 7 64 Bit):

seems to be a bug.