DataFrame.replace with dict does not work with Duplicate Column Labels
#### Code Sample, a copy-pastable example if possible

```python
df = pd.DataFrame({
    'name':'a a b b c d'.split(),
    'value1':[1,None,2,None,3,4],
    'value2':[1,None,2,None,3,4]
})

df.columns='name v v'.split()

df.fillna({'v':0})
```
#### Problem description
display the Warning message:
```
D:\Program Files\Anaconda3\lib\site-packages\pandas\core\frame.py:4239: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  **kwargs
```

and Data has not been modified


#### Output of ``pd.show_versions()``

<details>

pandas           : 0.25.0
numpy            : 1.16.2
pytz             : 2018.9
dateutil         : 2.8.0

</details>
