A European barrier call with barrier $B = 50$, expiration $T = 31$, and strike $K = 33$ costs $12$. The investor is interested in a product that, unlike this barrier call, offers some protection for the case that the stock goes above the barrier 50. The investor wants to buy an investment product called Secured Barrier Call whose payoff structure is
$$\text{Payoff}= \begin{cases} S(31)-33\quad, & \text{if} \hspace{2mm} S(31)\ge33 \hspace{2mm} \text{and} \hspace{2mm} S(t) < 50\quad,\hspace{5mm} \forall \,t\le 31 \\ 50\hspace{2.2cm}, & \text{if} \hspace{2mm} S(t)\ge50 \hspace{2mm}\text{for some}\,\,t\le31 \\ 0\hspace{2.45cm}, & \text{o.w} \end{cases}$$
An American digital call with strike $33$ and expiration $31$ costs $0.73$, and the American digital call with strike $50$ and expiration $31$ costs $0.70$.
I need to compute the price of the Secured Barrier Call. After computation, I got $46.94$.
That's what I've done: $C_0=12-2\times0.73+52\times0.70=46.94$. But I am not confident about what I've got.
Could you please confirm or help me with any hint if it's wrong? Thank you.
P.S.: I recently started working on quantitative finance, and it's a problem that I found in book for practicing.