There's no way to predict the future. But one way to figure out how realistic it may be is to do some math to see what levels of adoption would be needed for the demand to drive the price to those levels.
We have an estimate X bitcoin owners today and Y bitcoins outstanding/mined and Z price per bitcoin.
So there's a relationship between X and Y to Z. If you change Z to $500,000 or $1,000,000 and solve for X you can find out how much adoption and demand would be needed. To get even more precise you should change the level of Y to reflect a future supply of bitcoin that would be higher than it is today, the effect of which will slow the price growth to adoption rate a bit.
The real challenge in the math is estimate how many users there are. There isn't good data on this, however we do have good data on the number of wallets open (currently at about 13.5 million).
Even if you google "how many people use bitcoin" you'll get an incredibly wide range of answers. In this case, take the lowest and highest estimates and create a range for your math.
Once you have a range based on the math you can determine how likely (or not likely) it is to reach that range of adoption to drive the price to $500,000 to $1M.
Maybe there's 10M bitcoin owners today. Could that number get to 100M? Absolutely, and if supply did not change than that would (in theory) raise the bitcoin price by 10 (so $20,000). Assuming no increase in supply, but another 10 fold increase in owners from 100M to 1B we (in theory) could have a bitcoin price of $200,000. We're only a fifth of the way to a $1M price per coin and we need just less than a fifth of the world's population to get there. This also assumes that each user maintains their current holdings and isn't buying more.
Another assumption to factor in (and one that makes reaching the price beyond this basic math more feasible) is considering how many businesses own bitcoin. Businesses can drive the price way up because they often have greater resources to buy the coin!
The discussion can get quite fun when we start talking about the math!
Aside from your variables X, Y and Z, I think that the volume of transactions is another important variable that should be taken into account. That has a huge impact on the demand of a currency, and ultimately, it's value.
Is that stat out there? How much bitcoin is changing hands over a period of time?