spacebar, this is not a 'bash feature'. date is an external utility, not part of bash -- your code would work equally well in a variety of shells, but has one problem. The -d switch is a nonstandard GNU feature, something vanilla AIX does not have.
Running the date external utility to extract two characters from a string is overkill of the nth order, in any case.
That's using the mktime subroutine from the POSIX core perl module (check perldoc POSIX for more details) to convert the given time to seconds since the Epoch. Then, the localtime builtin function (see perldoc perlfunc for the details) is used to convert that value to a list. In this list, the 7th value (index 6) is the weekday. Then, this weekday value is used as an index to get the required weekday name from the defined list.