It all depends on what you mean by 'not working'.
Maybe you just need to treat Y values as double, instead of string?
foreach (DataRow r in initialDataSource.Rows)
{
series.Points.AddXY("Actual", double.Parse(r["Actual"].ToString()));
series.Points.AddXY("unavailable_actual", double.Parse(r["unavailable_actual"].ToString()));
series.Points.AddXY("budget", double.Parse(r["budget"].ToString()));
}