To answer this, the first thing to look at is your input data. If your input data  the observations  vary quite considerably then, it is reasonable that the model you get back from the Forecaster class as the "best" is in fact a polynomial regression model. If you plot the regression curve alongside your input data, you'll probably find that it does indeed fit the data pretty well. Higher order polynomial regression models can fit most data  even random data  pretty well. So, what can you do to get a better forecast?  Use more input data. Collect more observations, if possible. Roughly speaking, the more data you use  provided it begins to show some sort of pattern  the better the forecast is likely to be.
 Related to this, you may also want to take a closer look at your data. If there are some initial data points that have very low values, are these "start up" values of some system, whereas the later observations are more like "steady state" values? If so, can you omit the startup values from the initial data set? Doing so should give more reasonable and stable results. But again, still consider using more input data  but more of the "steady state" values.
 If neither of these first two options are viable, then try forcing the use of a different model. If you really do have so few observations and cannot obtain more, and you also have some idea of what range the forecast values should be in  and whether you'd expect to see the values increase, decrease, oscillate, etc. over time  then you should really do some further analysis to select a good forecasting model.
In other words, the numbers alone do not provide enough information to select a "good" model  based on what you would expect to see. You should try out various other models  plotting their future projections on a chart is often very helpful in this respect. Then select the one you feel best provides future forecasts for your data, based on your additional knowledge of the data.
