Don't think that "DATEFIRST" should matter in this case. As the @@DATEFIRST value is changed, only the weekday numbers are changed as well. It doesn’t affect the number to name mapping.
SET DATEFIRST 7 -- default, Sunday
SELECT DATEPART(WEEKDAY, getdate()),DATENAME(WEEKDAY, getdate())
The result will be 4, Wednesday
SET DATEFIRST 1 -- Monday
SELECT DATEPART(WEEKDAY, getdate()),DATENAME(WEEKDAY, getdate())
The result will be 3, still Wednesday
As noted before, I would check the settings in the Control panel –especially for the correct time zone