### Apache Airflow Provider(s)

amazon

### Versions of Apache Airflow Providers

7.2.1

### Apache Airflow version

2.5.1

### Operating System

Ubuntu

### Deployment

Official Apache Airflow Helm Chart

### Deployment details

_No response_

### What happened

I am trying to use the `S3ToRedshiftOperator` to copy data into an existing table which has a column defined as non-null with default.

The copy fails with the following error:
```
redshift_connector.error.ProgrammingError: {'S': 'ERROR', 'C': '42601', 'M': 'NOT NULL column without DEFAULT must be included in column list', 'F': '../src/pg/src/backend/commands/commands_copy.c', 'L': '2727', 'R': 'DoTheCopy'}
```

This is happening because when using the `UPSERT` method, the operator first creates a temporary table with this statement ([here](https://github.com/apache/airflow/blob/47cf233ccd612a68bea1ad3898f06b91c63c1964/airflow/providers/amazon/aws/transfers/s3_to_redshift.py#L173)):
```
CREATE TABLE #bar (LIKE foo.bar);
```
And then attempts to copy data into this temporary table. By default, `CREATE TABLE ... LIKE` does not include default values: _The default behavior is to exclude default expressions, so that all columns of the new table have null defaults._ (from the [docs](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_NEW.html)).

### What you think should happen instead

We should be able to include default values when creating the temporary table.

### How to reproduce

* Create a table with a column defined as non-null with default value
* Use the operator to copy data into it using the `UPSERT` method

### Anything else

_No response_

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

self,
        *,
        schema: str,
        table: str,
        s3_bucket: str,
        s3_key: str,
        redshift_conn_id: str = "redshift_default",
        aws_conn_id: str = "aws_default",
        verify: bool | str | None = None,
        column_list: list[str] | None = None,
        copy_options: list | None = None,
        autocommit: bool = False,
        method: str = "APPEND",
        upsert_keys: list[str] | None = None,
        redshift_data_api_kwargs: dict = {},
        **kwargs,
    ) -> None:
        super().__init__(**kwargs)