Some of your locally owned fish stores may be more likely to carry nice driftwood if you are looking to buy. I have a couple of places that I go to that usually have some. I have bought some off ebay, I generally check prices and compare those at LFS to those off ebay+shipping. I've picked up some nice driftwood at fish auctions.
You can hunt for your own driftwood if you have access to places to find submerged wood.
Rocks..some LFS's carry them, you also might try places that carry landscape materials to look for small sized boulders. Again...if you have a place you can look for them and pick them up...lucky you!
Went out to the Black Hills area in South Dakota...everyone and his brother out there seemed to sell rocks.