When attempting to use the execute align command, I noticed a major problem with it. I assumed it was meant to align summoned entities at the center of a block. However, testing on an armor stand with the command (/execute at @a align x align z run summon minecraft:armor_stand) I noticed the armor stand opts to summon at the top left corner of the block rather than the center. This is because the center of the block is 0.5 where it should be 0.0. If you teleport yourself to 0 ~ 0 it puts you at the center of the block. If you teleport yourself to 0.5 ~ 0.5 it also teleports you to the center of the block, thus making 0.5 = 0? To me, this makes no sense. 0.0 should be the center of the block.
If you only teleport to 0, 0 without specifying precision in your arguments, the game will center-correct the positions to 0.5, 0.5. Type 0.0, 0.0 to prevent this from happening. Align in /execute will also only align to the axes specified. For example, 'align xz' will align an entity to the axes and not to a block.