Worf said:
That's the problem... If I am going to wait until he raises his gun to fire at me to see whether he misses or not, then I won't.
That may well be, but you can't go around pre-emptively murdering people you think might some day be a threat to you. They have to be an real, credible, material threat to your physical person RIGHT NOW or you can't use lethal force.
Or should I tell him to put the gun down or I will fire?
That sounds perfectly reasonable to me. You have a right to place him under citizens arrest and use whatever force is necessary to keep him there until the police arrive. You also have a right to forcibly remove him from your property.
You could begin that process by telling him to freeze, and that if he moves you'll shoot him. If he then moves you shoot him. In this case you have not used any more force than was necessary.
All I am saying is you can't pre-emptively murder people just because they might be a threat. They have to be an actual threat, and an immediate, present, physical threat, before you can use lethal force.
Absolutely the cops will order someone to stop before they will fire their weapons. The cops will generally do whatever they can to avoid using lethal force and will only us lethal force as a last resort.
If I raise a gun at an ETF officer, I am toast.
Yup, and if this individual raised his gun at you, you could fire first too. The situation being described is NOT that he is pointing a gun at you. The situation is that he is carrying a gun and entering your house.
The moment he points it at you, or begins pointing it at you, that real immediate threat materializes and you are well within your rights to use lethal force to stop it.
Same for the ETF officer.