1) В данном случае переменная i хранит кортеж из букв, поэтому в этом кортеже никогда не будет сочетания "ИО"
Для исправления этого вам надо добавить строку:
i = ''.join(i)
2) "О" должна идти после согласной, а значит, она не может стоять первой, а также не может идти после другой "О". В итоге у вас должно получить что-то вроде:
k=0
from itertools import product
for i in product('СИРОП', repeat=5):
i = ''.join(i)
if (i.count('О')==1) and (i.count('ИО')==0) and (i.count('ОО') == 0)\
and not i.startswith('О'):
k+=1
print(k)