動作確認は Windows 7 U64(SP1) + Delphi XE(UP1) Pro
+ Delphi XE5(UP2) Por 32bit
+ Delphi XE5(UP2) Por 64bit
結論
貴方の Delphi XE5 は壊れている
procedure TForm1.Button1Click(Sender: TObject);
var
LValue : Double;
begin
LValue := RoundAct(565.5);
Memo1.Lines.Add(FloatToStr(LValue));
end;
procedure TForm1.Button2Click(Sender: TObject);
var
LValue : Double;
begin
LValue := RoundAct(565.50001);
Memo1.Lines.Add(FloatToStr(LValue));
end;
// 質問者が提示したコードのコピペ
function TForm1.RoundAct(pATAI: Double): Integer;
begin
if pATAI >= 0 then begin
Result := Trunc(pATAI + 0.5);
end else begin
Result := Trunc(pATAI - 0.5);
end;
end;