Welcome to AAC and thank you for showing your work and doing so in a clean and organized manner.
You answers are wrong and there are a number of issues at play.
One thing that will help you (although I don't see that it resulted in errors here) is if you get in the habit of tracking your units faithfully throughout your work.
Also, you should always annotate your diagrams with the definitions of any variables you use -- that might have helped you avoid a couple of your mistakes.
For for answer to part b you came up with a negative value for I_D1. Does that make sense? Is that consistent with a value of 0.7 V for V_D1?
You also claim that V_R2 = Vo. Does this make sense?
If Vo is 3 V and V_D2 is 0.7 V, doesn't V_D1 have to be 3.7 V and doesn't V_R1 then have to be -0.7 V?
Get in the habit of ALWAYS asking if your answers (including intermediate answers) make sense.
In your calculation for I_R2 in part a you have 3 V over 12000 V but yet get an answer in uA. Yes, you just messed up and put V instead of Ω in the denominator, but what this shows me is that you aren't actually paying attention to the units in your work, you are merely putting them here and there for window dressing and then tacking onto the answer the units that you are hoping the answer actually has.
Tracking your units through each and every step of your work is perhaps the single most powerful error detection and correction tool available to the engineer. And it's FREE! If you develop this habit, you find that the total time it takes you to complete your assignments will go down (because you will not make as many mistakes and you will catch the lion's share of the ones you do make almost immediately) and your grades will go up.
You are making unstated assumptions about your circuit and then failing to ask if the answers are consistent with those assumptions.
In both parts you are assuming that both diodes are forward biased. That's fine -- but explicitly state that assumption and then explicitly verify the validity of that assumption.
You still need to pay proper attention to units. Trust me -- it WILL pay off handsomely.
Your answers are correct, but some of your intermediate steps are wrong.
At the bottom you say that I_D2 is 2.94 mA. Does that make sense? You have a total of 6 V from top to bottom and without the diode drop at all you would have 18 kΩ of resistance between them, so that means the current has to be less that 6 V / 18 kΩ = 0.333 mA. Then in the next step you multiply 2.94 mA by 6 kΩ, which is the next best thing to 3 mA and 6 kΩ which would be 18 V, so after subtracting 3 V you would get something just under 15 V, not -1.23 V.
You really need to develop of the habit of not just writing down equations for the heck of it with no real intention of using them or ensuring they are correct. Get in the habit of looking at EVERY equation you write and asking (1) do the units work out properly, (2) is it self-consistent and does it make physical sense, and (3) are values reasonable.
With a surprisingly small amount of practice, you will start doing all three automatically without even thinking about it (except when something seems off and then, most of the time, it will be because of a mistake you just caught).
Another very good habit to get into is to always try to estimate what the answer is going to be before you start doing a detailed analysis. If your result is consistent with your estimate, then there's a good chance it's correct (or, even if not correct, it may well be close enough to actually still work). But if the answer and your estimate don't agree within reason, then one of them is wrong. Don't go forward until the discrepancy is resolved. If it turns out that your estimate was wrong, consider it a very valuable learning opportunity -- explore WHY your estimate was wrong and what you would have needed to do differently to come up with a better estimate. That will pay dividends down the road.