### Summary

When running user module with `create_home`, the directory is owned by `root:root` and its `create_date` isn't proper (probably the date of something else, created at machine setup)

```
drwxr-xr-x  2 test_user              test_user              4.0K Jul 29 13:07 test_user <- created by 2.11.2
drwxr-xr-x  2 root                   root                   4.0K Jul 15 10:37 test_user_3  <- created by 2.12.0.dev0
```


Fails in
ansible-playbook [core 2.12.0.dev0] 
Works in
ansible-playbook [core 2.11.2.post0] 

I suspect that this is the reason (but can't be sure)
https://github.com/ansible/ansible/commit/2f7e0b84895b4d6816e695b009bf53e78e6aa088



### Issue Type

Bug Report

### Component Name

user

### Ansible Version

```console
$ ansible --version 2.12.0.dev0
```


### Configuration

```console
$ ansible-config dump --only-changed
```


### OS / Environment

Ubuntu 20.04

### Steps to Reproduce

<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)

```


### Expected Results

Folder is created with user's permissions

### Actual Results

```console
Folder is created with root:root permissions
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
cmd.append(self.login_class)
        if self.update_password == 'always' and self.password is not None and info[1] != self.password:
            cmd.append('-p')
            cmd.append(self.password)
        if self.password_lock and not info[1].startswith('*LOCKED*'):
            cmd.append('-C yes')
        elif self.password_lock is False and info[1].startswith('*LOCKED*'):
            cmd.append('-C no')
        
        if len(cmd) == 1:
            return (None, '', '')
        cmd.append(self.name)
        return self.execute_command(cmd)
class SunOS(User):
    """
    This is a SunOS User manipulation class - The main difference between
    this class and the generic user class is that Solaris-type distros
    don't support the concept of a "system" account and we need to
    edit the /etc/shadow file manually to set a password. (Ugh)
    This overrides the following methods from the generic class:-
      - create_user()
      - remove_user()
      - modify_user()
      - user_info()
    """
    platform = 'SunOS'
    distribution = None
    SHADOWFILE = '/etc/shadow'
    USER_ATTR = '/etc/user_attr'
    def get_password_defaults(self):