well a few things with the mazda3 just for physical/practical issues:
The mounts are not even close to the same design as the protege. The passenger side mount studs on the motor do look similar though, so that might be ok.
The transmission uses a cable linkage setup for the shifter rather then the bar design the protege uses.
The motor does not make a lot of power
The 5-spd manuals are still the crappy g-series, so that will be your weak point still, altho ur 99 has the even crappier f-series
The motor is only avail in obdII form which leaves a huge headache of wiring to get it to work right
Some have mentioned the ecu needing to see the mazda3 cluster and key to work as well, not confirmed right now though
Axles, since its a gseries trans Im sure the protege driver axle would work fine from a 2.0l protege, but if the intermediate shaft is shorter or longer then a different passenger axle would be needed.
No one has test fitted on in to see clearance on the crossmember or if the exhaust lines up once ran down under the car
The throttle bodies are electric and have no cable linkage.
The list goes on.....
Not to mention a used 2.3l non DISI goes for 1500-1700+shipping, a Used KLZE bolts right up and easier, makes more power and more torque and can handle a good amount of boost and go for 700-1200shipped