Отвечу сам себе:
Тот div свойства которого нужно менять должен идти в тексте ниже чем тот который его меняет.
Т.е.
Вот так работает
#id1 ~ #match1 {}
~~~
<div id="id1"></div>
<div id="match1"></div>
А вот так нет
#id1 ~ #match1 {}
~~~
<div id="match1"></div>
<div id="id1"></div>