Do I always have at least 10 minutes, 3 hours or 1 day to cancel the transaction?
You have until the transaction is confirmed to attempt to double spend it back to yourself (i.e. cancel it). It all depends on the fee you pay and the current state of the mempool.
Take a look at what the mempool looks like here:
https://jochen-hoenicke.de/queue/#BTC%20(default%20mempool),8h,weightIf your transaction pays 1 sat/vbyte in fees, and there are many megabytes of transactions which pay higher fee rates sitting in the mempool, then your transaction could take hours or days to confirm, giving you plenty of time to cancel it if you choose.
On the other hand, if the mempool is empty and your transaction pays a high fee putting it near the tip, your transaction could confirm within seconds of you broadcasting it, meaning you have no chance to cancel it at all.