Maybe you queened the wrong pawn. I suggest 50... a2! and if now 51. Rc3 Rxc3 52. Kxc3 then 52... a1=Q +(with a check!) and black should win.
In the opening black seems to have more than enough compensation for the sacrificed pawn so you are probably right about your advantage. I also agree with 9... Rd8 being a mistake and e5 a better try. Alternatively, if you want your rook on d-file why not castle 9... 0-0-0!? when you also protect b7? 11... Rd7 seems better than 11... b6 to me - you moved the rook there anyway couple moves later.
After 14. d4 it's clear that all your compensation is gone and white is just a healthy pawn up. After 18. Nxd4 I would evaluate white's position already winning but after that he starts to drift making several inaccuracies.
I think one of the basic mistakes white commited was giving you too much counterplay. When one has clear material advantage supressing opponents counterplay should be a priority. Thus for example 20. Be3 and then developping also the king's rook (by means of Kh2) looks better than letting both black rooks enter the second rank that happened in the game.
This game ended in a draw although I believe there should have been a winner had either side played more accurately; this is a corr game where I played Black and believe to have had the advantage early (first half) in the game; since I was Black in this game, I did not mind having the game turn out as it did (although I hate draws). Somehow I made a mistake that allowed my opponent to get back in the game (this is only my opinion as I felt I had the better position; although it may be bias as I am one of the players). My endgame play is nothing to admire so I feel that there must have been some inaccuracies that I made, however my opponent had the better endgame position (again, this is just my initial take on the position as I did not like my position near the end).
~~~
~~~