No estoy 100 % seguro, pero creo que esto le pide que asigne un tipo a la salida.
Intente cambiar esto:
$params = array(
array($_POST["FirstName"], SQLSRV_PARAM_IN),
array($_POST["LastName"], SQLSRV_PARAM_IN),
array($_POST["Email"], SQLSRV_PARAM_IN),
array($_POST["Username"], SQLSRV_PARAM_IN),
array(md5($_POST["Password"]), SQLSRV_PARAM_IN),
array(date("Y-m-d H:i:s"), SQLSRV_PARAM_IN),
array($_SERVER["REMOTE_ADDR"], SQLSRV_PARAM_IN),
array("Member", SQLSRV_PARAM_IN),
array("No", SQLSRV_PARAM_IN),
array($UserID, SQLSRV_PARAM_OUT)
);
a
$params = array(
array($_POST["FirstName"], SQLSRV_PARAM_IN),
array($_POST["LastName"], SQLSRV_PARAM_IN),
array($_POST["Email"], SQLSRV_PARAM_IN),
array($_POST["Username"], SQLSRV_PARAM_IN),
array(md5($_POST["Password"]), SQLSRV_PARAM_IN),
array(date("Y-m-d H:i:s"), SQLSRV_PARAM_IN),
array($_SERVER["REMOTE_ADDR"], SQLSRV_PARAM_IN),
array("Member", SQLSRV_PARAM_IN),
array("No", SQLSRV_PARAM_IN),
array($UserID, SQLSRV_PARAM_OUT, SQLSRV_PHPTYPE_INT)
);
referencia de:aquí