Note that the condition ∠ACB<60∘ guarantees that O lies between I and C.
a.
We denote the angles of triangle ABC by α=∠BAC, β=∠ABC and γ=∠ACB. Let K and k be the circumcircles of ABC and BIO, respectively. The inscribed angle theorem for circle K yields: ∠BOC=2α. Therefore we have ∠IOB=180∘−2α and because of α=β we obtain ∠IOB=γ. Furthermore the inscribed angle theorem for circle k gives ∠IDB=γ, whence finally ID∥AC.
b.
We denote the point of intersection of lines OD and IB by F and the midpoint of AB by G. Since IODB is cyclic, we have ∠IOD=180∘−β/2, that is ∠DOC=β/2 or equivalently ∠FOI=β/2. Furthermore ∠GIB=90∘−β/2 implies ∠OIF=90∘−β/2. Therefore ∠IFO=90∘.