100% اشتباه هست،
خروجی تابع FORMAT از نوع متن هست (nvarchar) و نه تاریخ (date).

این تابع صرفا تاریخ رو بر اساس culture که بهش میدین به شکل متن برمیگردونه.

برای اطمینان میتونین کدهای زیر رو اجرا و نتیجه رو ببینین:
SELECT    GETDATE() AS [Data Value], 
SQL_VARIANT_PROPERTY(GETDATE() , 'BaseType') AS [Data Type]


SELECT    FORMAT(GETDATE() , 'yyyy-MM-dd' , 'fa-IR') AS [Data Value],
SQL_VARIANT_PROPERTY(FORMAT(GETDATE() , 'yyyy-MM-dd', 'fa-IR') , 'BaseType') AS [Data Type]


Screenshot 2023-12-06 190858.png

Screenshot 2023-12-06 191014.png