DSolve stuck (infinite loading) with simple PDEs

Hey folks!

I’m trying to solve the following equations using DSolve, but it loads indefinitely. Could you please give me some guidance?
dD/dt = D * W
Entries of D are functions of variables S and t
The initial condition of D(S, 0) is given.

But when I solve it inside Mathematica, it keeps loading for more than hours (I tried multiple times, no result after one+ hour)

Thanks a ton!
P.S.: my equations are:

My DSolve code:

Q[S_, t_] := {
	{d11[S, t], d12[S, t], d13[S, t]}, 
	{d21[S, t], d22[S, t], d23[S, t]}, 
	{d31[S, t], d32[S, t], d33[S, t]}
	}; (*Store results here*)
FullSimplify[Dot[Q[S, t], W]]
Equations = Table[
	D[Q[S, t][[i, j]], t] == FullSimplify[Dot[Q[S, t], W]][[i, j]]
	, {i, 3}, {j, 3}];
InitialConditions = Table[
	Q[S, 0][[i, j]] == FrameEvolve0[[i, j]]
	, {i, 3}, {j, 3}];
sol = Simplify[DSolve[
	Simplify[Flatten[Equations]~Join~InitialConditions], 
	Flatten[Q[S, t]], 
	t]];

I would do it this way:

dd[t_] = Table[d[i, j][t], {i, 3}, {j, 3}];
dd0 = {{-Cos[s], 0, -Sin[s]},
   {-Sin[s], 0, Cos[s]},
   {0, 1, 0}};
w[t_] = (b2 Cos[s])/(c t) {{0, 1, 0},
    {-1, 0, -1}, {0, 1, 0}};
sol = DSolve[{dd'[t] == dd[t] . w[t], dd[0] == dd0},
  Flatten[dd[t]], t]