Look at the following scenario:
I send 1'000 BTC to an exchange. After 6 confirmations my account is credited and I buy 1'000 BTC worth of altcoins and withdraw them. Then I create a double-spending transaction that sends 50% of those bitcoins to another my address and 50% as the transaction fee.
What will rational miners do? Depends on the amount of the fee and number of confirmations I think. It would be interesting to see the formula that tells what values are enough to convince 51% of the miners to re-mine the last blocks...
Ok a 1000 BTC Transactions has 6 confirmations and is double spent with a fee of 500 BTC.
First of all, the transaction has to actually propagate to the miners or be directly sent to them. An easy task.
Sencond, the miner has to actually accept the Tx in his memory. This depends on the miner itself. He has to actually consider re-mining and building on top of a double spend transaction that already has 6 confirmations. Fair enough. Lets say we find a miner that does this. It them depends on how much hashpower he (or his pool) has.
Let's say it's a really big pool with 30% of the total hash power.
The chance for the miner to find each block is 30% so in the long run, he will always lose.
With the total hashrate being split into 70% (the guys working on the current chain) and 30% (the miner who performs the attack), an average block time of party 1 (the 70% mainchain hashers) will be ~14,29 minutes while the average block time of party 2 (the 30% hasrate attacking miner) is ~33,33 minutes.
Therefore even if party 2 finds blocks at double the speed it is supposed to (through sheer luck), if would still find block slower than party 1.
Party 2 would have to find blocks 2.33 times as fast as party 1 just to not fall behind more than the 6 blocks. Thats an insane amount of luck needed and it still wont make the attack successful. So they would need to find blocks 2.33 times as fast as party 1 (this is all relative to their hash rate ofc) in order to eventually, some day, catch party 1. However, this would go over a lot more blocks than just the 6 initial confirmations.
There is the option of multiple pools becoming greedy and pulling out of the main chain to mine the Tx. However, this would not lead anywhere since once one of those pools would be the Tx re-confirmed, the others would not build on their chain.
If most pools drop out of the main chain to do this, the main chain would be left with almost no hash power and therefore the fastest pool could eventually take over if they all keep being greedy and mine for themselves.
However, they would have to know others are dropping out of the main chain and not return in before they do so themselves, else they's waste hash power.
So it's a matter of who does it first. If a 30% pool drops out, then a 40% pool could drop out as well and mine for itself because that would leave it with the most hashpower (30% on the first pool and 30% left on main chain, with 40% on the 2nd pool).
However, that would motivate pool 1 to rejoin the main chain because else it would not get anything (because it's blocks would be orphaned by pool 2).
This is how incentivized mining works.
The only problem I see is a 51% attack. However, a 51% attack would probably lead to bitcoin losing a lot of value and therefore the 500 BTC would be worth a lot less, so the risk doing this cannot be calculated.
Well, pools could also cooperate to rake in the 500 BTC and split the money. If most pool participate, the mainchain would get almost no more blocks and the fork would be over soon. This could be an attack thats actually worth is for pools, because it seems like there is a consensus in the network and only a few miners are on "the wrong" chain.
However, even with this you don't know what it might cause to teh price, it's just the attack that is most likely to succeed without destroying the value of the fee.