date(<datefield goes here> 'WWWW') will only change the formatting of the date to the day name. The underlying values are still the individual dates. What you need is a weekday field as dimension. You can create that in the script:
mapping load * inline [
, interval(EndTime-StartTime,'hh:mm') as WorkHours
, applymap('MapDays',weekday(Date)) as Weekday
The problem is that date() function changes the text format of dual data type (date is dual, both text and numeric). The numerical date remains unchanged. So you see separate dimension value for each maandag (QV distinguishes the values by numeric part).
To solve the problem you should have the numeric values of each maandag to be equal. The functions like Month, WeekDay etc. do that. Then you can use Date() function to set the format you like: