### 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
'''
        Return the next available uid. If system=True, then
        uid should be below of 500, if possible.
        '''
        cmd = self._get_dscl()
        cmd += ['-list', '/Users', 'UniqueID']
        (rc, out, err) = self.execute_command(cmd, obey_checkmode=False)
        if rc != 0:
            self.module.fail_json(
                msg="Unable to get the next available uid",
                rc=rc,
                out=out,
                err=err
            )
        max_uid = 0
        max_system_uid = 0
        for line in out.splitlines():
            current_uid = int(line.split(' ')[-1])
            if max_uid < current_uid:
                max_uid = current_uid
            if max_system_uid < current_uid and current_uid < 500:
                max_system_uid = current_uid
        if system and (0 < max_system_uid < 499):
            return max_system_uid + 1
        return max_uid + 1
    def _change_user_password(self):