The biggest problem with diagonals in DF is that DF treats all 8 closest tiles as adjecent. For example
.X.
.X.
.X.
where X is a wall, is inpassable.
X..
.X.
..X
Is passable. I order to translate the first wall to a 45 degree situation, you'd have to do something like:
.XX
..X
...
Which is hardly ideal. It looks weird, even if it is topologically equivelent given the constraints. The trick is that where in figure 1, above, you can go in one direction and remain adjacent to the wall, and in Figure 2 you can do the same (but the wall suddenly is full of holes), in figure three you need to change direction in order to move along the wall in an equivelent fashion.
(from the left side of the wall, move diagonally up, and you maintain adjacency in a different rotation each time. From the right, you must go up, then left, AND the adjacency is rotated. it's weird... but again, topographically equivelent regardless, I'm pretty sure)
Maintaining both consistent direction of movement and solidity is basically impossible in this topographic layout. Diagonals would have to be removed as a possible direction of movement in order to make it work.
(edit: fine, have some code tags)