DataFrame constructor ignores integer dtype when dict-data and non-overlapping columns
This is close to https://github.com/pandas-dev/pandas/issues/24385, but we don't have a test saying otherwise, so I'm actually going to fix this one :)

```python
In [21]: pd.DataFrame({"a": [1, 2]}, columns=['b'], dtype=int).dtypes
Out[21]:
b    float64
dtype: object

In [22]: pd.DataFrame({"a": [1, 2]}, columns=['b'], dtype='datetime64[ns]').dtypes
Out[22]:
b    datetime64[ns]
dtype: object
```

Out[21] should be int64.