When you want to short a stock, you are trying to sell shares (that you are borrowing from your broker), therefore you need buyers for the shares you are selling. The ask prices represent people who are trying to sell shares, and the bid prices represent people who are trying to buy shares.
Using your example, you could put in a limit order to short (sell) 1000 shares at $3.01, meaning that your order would become the ask price at $3.01. There is an ask price ahead of you for 500 shares at $3.00. So people would have to buy those 500 shares at $3.00 before anyone could buy your 1000 shares at $3.01.
But it's possible that your order to sell 1000 shares at $3.01 never gets filled, if the buyers don't buy all the shares ahead of you. The price could drop to $1.00 without hitting $3.01 and you will have missed out on the trade.
If you really wanted to short 1000 shares, you could use a market order. Let's say there's a bid for 750 shares at $2.50, and another bid for 250 shares at $2.49. If you entered a market order to sell 1000 shares, your order would get filled at the best bid prices, so first you would sell 750 shares at $2.50 and then you would sell 250 shares at $2.49.
I was just using your example to explain things. In reality there won't be such a wide spread between the bid and ask prices. A stock might have a bid price of $10.50 and an ask price of $10.51, so there would only be a 1 cent difference between putting in a limit order to sell 1000 shares at $10.51 and just using a market order to sell 1000 shares and getting them filled at $10.50.
Also, your example probably wouldn't work in real life, because brokers typically don't allow people to short stocks that are trading under $5 per share.
As for your question about how often you are unable to make a short sale, it can sometimes happen with stocks that are heavily shorted and your broker may not be able to find any more shares to borrow.
Also remember that you can only short stocks with a margin account, you cannot short stocks with a cash account.