"If my computer gets an average of 250Mhash/s, what is the maximum amount of time it would take me to solve a block, and get 50 bitcoins?"
An infinite amount of time. Since your 250Mhash/s currently accounts for 1/44124th of the network, you have a 1:44124 odds of solving any particular block. However, your odds do not automatically get better with time.
To give an example of this, if you were playing a lottery that had one-in-a-million odds and you played the lottery a million times, you are not guaranteed to win even once. On the other hand, you might win twice or even more. It just depends upon luck.
If you're interested in the really complicated math you can figure out exactly your odds of solving a block on any particular day, week or month - but with your hash rate I'd suggest that if the difficulty were to stay the same (which it won't) you'd solve a block every 10 months on average.
You'd be much better off to mine with a pool, and get smaller, more regular payouts. I recommend Triple Mining as one of the best smaller pools out there; the link is in my sig.