The problem is caused by this line
WR = table(RedBloodCellCount,MeanWBCM30,'variablenames',{'RedBloodCellCount','MeanWBCM30'});
The function MultipleRegression require tables with field WhiteBloodCellCount and RedBloodCellCount, which the table WR does not contain. Change the 2nd variable name to WhiteBloodCellCount and it will give no syntax error.
WR = table(RedBloodCellCount,MeanWBCM30,'variablenames',{'RedBloodCellCount','WhiteBloodCellCount'});
*** "the following passage is just a suggestion based on observing your code, you may ignore it if you are sure about what you are doing."
It appears that you are making a logical mistake in your code. The new table WR contain the same value for WhiteBloodCellCount, so it might not be a good way to evaluate the performance of [Bestparams1, Bestparams2, Bestparams3]. It might be better to compare the parameters based on the original Data table as follow
Curve = MultipleRegression([Bestparams1,Bestparams2,Bestparams3], Data);
SSD = A(:,3)-SimulatedY.^2;
is definitely wrong which is also indicated by your comment after the line. The correct is
SSD = (A(:,3)-SimulatedY).^2;
Hope this will help.