To display numbers you should use NumberFormat or NumberFormat2.
Not all decimal number can be represented exactly in binary format, that's why you get -103.11000000000001.
Using AGrahams BigNumbers library will solve your issues as you can set the precision for the numbers. It's a must if you are performing calculations involving currency (money) or anything which requires precision.
B4X:
Dim bg1 As BigDecimal
Dim bg2 As BigDecimal
bg1.Initialize("1.40")
bg2.Initialize("165")
bg2.Multiply(bg1)
Log(bg2.ToString)
Log(1.40 * 165)
The example gives the result of 231.00 for the BigDecimal calculation and 230.99999999999997 for 1.40 * 165.
By the way this isn't a bug it's how IEEE floating point arithmetic works.