Because the modification date of the profile folder is completely separate from the modification date of the files inside it, and the modification date of the profile folder doesn't necessarily have any correlation with the modification of the user's actual profile.
Determining the user profile modified date is done differntly, depending on which version of Windows you have.
On Windows 2000, XP and Server 2003, this is done by checking the modified date on the NTUSER.DAT
file inside each specific user's root folder. As your comment below indicates, this is not especially accurate, as that file can be modified by system processes, services, etc, and may not be a good indication of when the user last logged in.
Under Server 2008/Vista and up, it's done with WMI, specifically the LastUseTime
property of the Win32_UserProfile
class. That would be where the System Properties window gets the information from, and you can do it too, through a command line. Again, this is because the modification date of the user profile folder is not necessarily correlated at all with modifications to the user profile itself. I could, for example rename a user's profile folder, change the date stamp, and so on, without actually making any changes to the profile itself, and likewise, I could modify the profile without changing a thing about the folder it's in.
And of course, this is a query you can run manually yourself. In PowerShell for example, it would look like:
gwmi win32_userprofile

That will list all the user profiles on the machine and include all the attributes. If you only care about, say the LastUseTime
, then you'd do:
gwmi win32_userprofile | select localpath, lastusetime

Lists all the user profiles, but only the local path (so you can determine which user which profile belongs to) and the attribute you're interested in.