Let $X$ be a Riemann surface and $p\in M$ some point.
Let $\mathcal{O}(p)=\mathcal{O}((-p))(U)=\{f\in \mathcal{O}^{hol}(U)\mid f\text{ has a zero of order atleast 1 at p}\}$
I.e. we have the divisor $(-p)=1\cdot p$ and we are considering the sheaf $\mathcal{O}_{(-p)}$.
Is it true that: $$0\to\mathcal{O}^{hol}\to\mathcal{O}(p)\to \Bbb{C}_p,$$ is exact. I am not even sure about the exactness in the first position. Clearly for $U\not\ni p$ we have $\mathcal{O}^{hol}(U)\cong \mathcal{O}(p)(U)$, but for $U\ni p$, where would we send holomorphic functions that do not have a zero at $p$?
This might be more of a comment than anything else, but too long to be posted above... I'll delete this if I have misunderstood your post - let me know if I did...
I'm a bit unhappy/confused with your notation ${\cal O}(p) = {\cal O}((-p))\ldots$" But by ${\cal O}(p)$, you mean the ideal subsheaf ${\cal I}={\cal I}_p$ of $\cal O$, of hol. functions which vanish at $p$, correct? Assuming that is the case, and that $X$ is compact: the only ${\cal O}$-linear sheaf homo $\phi\colon{\cal O} \to {\cal I}$ is the zero map, because any such $\phi$ must take the global section $1 \in {\cal O} ( X)$ to the unique global section $0\in {\cal I}(X)$. So, if $s \in {\cal O}(U)$, then $$\phi_U (s) =\phi_U (s\cdot 1) = s \cdot\phi_U (1) = s\cdot 0 = 0.$$ So $\phi$ is identically zero.